yxlovemoney
2017-02-24 07:44请问SOCKET程序如何才能在亚马逊云主机上使用
30情况是这样的,在亚马逊申请了云主机,
也做了基本的设置
也设置好了弹性IP,
设置了安全组
听说VPC也要设置些什么,因为这里不知需要设置些什么,就随便弄了下
然后下面是我的SOCKET程序的部分主要片段
服务端:
IPEndPoint ipep = new IPEndPoint(IPAddress.Any, 10000);//
// 创建套接字
serverSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
// 绑定网络端点IPEndPoint
serverSocket.Bind(ipep);//
// 监听,参数为请求队列中的最大请求数
serverSocket.Listen(10);
while (true)
{
try
{
// 接收客户的连接请求。
clientSocket = serverSocket.Accept();
MessageBox.Show(clientSocket.RemoteEndPoint.ToString());
clientThread = new Thread(new ThreadStart(ReceiveData));
clientThread.Start();
}
catch (System.Exception ex)
{
MessageBox.Show("listening Error: " + ex.Message);
}
}
客户端:
// 通过主机IP地址和端口号,形成到服务的连接点
IPEndPoint ipep = new IPEndPoint(IPAddress.Parse(/*"183.31.134.37"*/"52.24.87.83"), 10000);
// 创建套接字
clientSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
//
try
{
clientSocket.Connect(ipep);
}
catch (System.Exception ex)
{
MessageBox.Show("connect error: " + ex.Message);
return;
}
while (true)
{
// 接收服务器信息
int bufLen = 0;
try
{
// 获取接收到的数据长度
bufLen = clientSocket.Available;
clientSocket.Receive(data, 0, bufLen, SocketFlags.None);
if (bufLen == 0)
{
continue;
}
}
catch (System.Exception ex)
{
MessageBox.Show("Receive Error:" + ex.Message);
return;
}
}
当把自己的服务端程序 放到亚马逊主机运行后,在其它电脑开启客户端进行连接,是连接不上的,请问下这是什么原因?
找了不少资料,也作了不少云主机设置的改变,但还是连接不上,虽然IP可以在命令行PING通,但程序就是连不上。
但上面的设置全部都是云主机启动之后在后台设置的,而且在部分地方也不知设置得到底对不对。
麻烦各位能支支招,先谢谢了。
- 点赞
- 回答
- 收藏
- 复制链接分享
1条回答
为你推荐
- C#如何在WPF中使用socket的异步方法里调用主线程的控件?
- c语言
- 开发语言
- c++
- 1个回答
- 如何在Go中获取socket.io握手查询
- socket.io
- 1个回答
- 如何使用socket和mysql发送多个值来存储在数据库中
- sockets
- mysql
- php
- jquery
- 1个回答
- 使用nodejs + socket.io和mysql聊天
- mysql
- php
- socket.io
- node.js
- 1个回答
- java网络编程socket 可以在两台电脑上传对象吗?
- 网络编程
- socket
- java
- 对象
- 7个回答
换一换