服务器为什么socket连接不上?

twtyypmb123 2015-06-08 09:21:48
本来写了一个socket程序要放在正式服务器上了,结果发现始终连不上,后来用socket调试工具发现里面显示的IP和服务器的IP不同,如下图,连不上是因为这个服务器的IP没配置好吗?

服务器的ip能ping通
...全文
64978 35 打赏 收藏 转发到动态 举报
写回复
用AI写文章
35 条回复
切换为时间正序
请发表友善的回复…
发表回复
maxwaste 2015-06-16
  • 打赏
  • 举报
回复 2
TCPListener初始化时候用的什么IP?如果是127.0.0.1只有本机能连接。换成IP address.Any就OK
  • 举报
回复
@maxwaste 谢谢你,换成你说的那样就行了
cq0115 2015-06-08
  • 打赏
  • 举报
回复
服务器在内网,外网要访问的话,需要在网路设备上做设置,端口映射,或者一对一是nat,这样对应的内网服务才能在外网被访问到。
leafly0719 2015-06-08
  • 打赏
  • 举报
回复
很显然,你的服务器不是公网服务器,是局域网的,只是其中部分端口映射到公网上了
Hu_01_19 2015-06-08
  • 打赏
  • 举报
回复
我是联通公司技术人员,处理过企业服务器的接入问题。
Hu_01_19 2015-06-08
  • 打赏
  • 举报
回复
把IP配置看一下,一般是路由配置有问题。
於黾 2015-06-08
  • 打赏
  • 举报
回复
引用 25 楼 x3230835 的回复:
[quote=引用 22 楼 sp1234 的回复:] [quote=引用 20 楼 x3230835 的回复:] 那对于这中情况,怎么解决呢,如果是服务商的问题,应该怎么指出?因为服务商打死不承认他们有问题。。。
服务商本来就没有什么问题。 通常租IP映射(而没有独立IP)的服务器,就是为了每月省几十块钱。你们自己选择的接入方式啊。[/quote] 意思就是用技术手段不能解决,要换服务器了?[/quote] 所以让你确定到底服务器是如何接入外网的,怎么映射的,都提供什么端口和服务 既然你是租的服务,这些一开始就应该都问明白
编程有钱人了 2015-06-08
  • 打赏
  • 举报
回复
IPCONFIG 测试一下自己的IP(这个IP一定要是外网的IP,我严重怀疑你写的是内网IP了) 或者在IIS绑定里面吗也能查看到自己的IP
twtyypmb123 2015-06-08
  • 打赏
  • 举报
回复
引用 22 楼 sp1234 的回复:
[quote=引用 20 楼 x3230835 的回复:] 那对于这中情况,怎么解决呢,如果是服务商的问题,应该怎么指出?因为服务商打死不承认他们有问题。。。
服务商本来就没有什么问题。 通常租IP映射(而没有独立IP)的服务器,就是为了每月省几十块钱。你们自己选择的接入方式啊。[/quote] 意思就是用技术手段不能解决,要换服务器了?
showjim 2015-06-08
  • 打赏
  • 举报
回复
引用 23 楼 sbwwkmyd 的回复:
IP不同是正常的,一般来说你的服务器端程序需要处理离服务器最近的网关IP(这里也就是13.0.0.176),而你的客户端程序需要处理的是公网IP,也就是XXX.X0.72.26。
一般来说你的服务器端程序需要处理离服务器最近的网关设备给服务器分配的IP。 例外IP映射一般同时涉及到端口映射,你需要服务商确认的是XXX.X0.72.26:60000是否映射到13.0.0.176:60000。
showjim 2015-06-08
  • 打赏
  • 举报
回复
IP不同是正常的,一般来说你的服务器端程序需要处理离服务器最近的网关IP(这里也就是13.0.0.176),而你的客户端程序需要处理的是公网IP,也就是XXX.X0.72.26。
  • 打赏
  • 举报
回复
引用 20 楼 x3230835 的回复:
那对于这中情况,怎么解决呢,如果是服务商的问题,应该怎么指出?因为服务商打死不承认他们有问题。。。
服务商本来就没有什么问题。 通常租IP映射(而没有独立IP)的服务器,就是为了每月省几十块钱。你们自己选择的接入方式啊。
  • 打赏
  • 举报
回复
对于IP映射的web服务器,通常只有使用(二级)域名才能访问。而使用它给你IP则只能使用FTP等等应用。 如果你能够使用映射IP访问远程桌面,这不算什么。因为它就是针对远程桌面应用而做了映射。 你应该使用一个具有独立公网IP的服务器。
twtyypmb123 2015-06-08
  • 打赏
  • 举报
回复
引用 16 楼 sp1234 的回复:
服务器真正的IP,要看网卡配置IP(包括动态获得的IP)。不是用什么远程桌面IP、或者出口的IP来当作服务器真正的IP。 在你贴出的画面中,根本看不出网卡此时绑定的IP。你贴出那两个IP可能都不是网卡IP,只是映射的IP。真实的IP可能是局域网IP,只能在服务商规定的范围内(例如长城宽带范围内)城域网内访问,甚至只能在同一个机房的局域网内访问。
那对于这中情况,怎么解决呢,如果是服务商的问题,应该怎么指出?因为服务商打死不承认他们有问题。。。
twtyypmb123 2015-06-08
  • 打赏
  • 举报
回复
引用 18 楼 Z65443344 的回复:
[quote=引用 17 楼 x3230835 的回复:] 应该没有用VPN哦,直接用MSTSC连的
看来你没用过VPN,也不知道该怎么用 你用MSTSC连之前,什么特殊的操作都没有,直接随便找台能连外网的电脑就都能连上服务器?[/quote]对,随便一台电脑就能连上服务器
於黾 2015-06-08
  • 打赏
  • 举报
回复
引用 17 楼 x3230835 的回复:
应该没有用VPN哦,直接用MSTSC连的
看来你没用过VPN,也不知道该怎么用 你用MSTSC连之前,什么特殊的操作都没有,直接随便找台能连外网的电脑就都能连上服务器?
twtyypmb123 2015-06-08
  • 打赏
  • 举报
回复
引用 15 楼 Z65443344 的回复:
[quote=引用 2 楼 x3230835 的回复:] [quote=引用 1 楼 huanggreat 的回复:] 是不是双网卡!
问服务商,只说了句是IP映射的,然后就没有然后了。。。[/quote] 如果你远程连上去是通过的VPN,那么其实是VPN把你的主机虚拟成局域网里的一个IP,然后你通过局域网去连接服务器的 你需要知道它映射到外网的IP到底是什么 然后你需要断开VPN,再去连外网IP,看能不能连上.[/quote]应该没有用VPN哦,直接用MSTSC连的
  • 打赏
  • 举报
回复
服务器真正的IP,要看网卡配置IP(包括动态获得的IP)。不是用什么远程桌面IP、或者出口的IP来当作服务器真正的IP。 在你贴出的画面中,根本看不出网卡此时绑定的IP。你贴出那两个IP可能都不是网卡IP,只是映射的IP。真实的IP可能是局域网IP,只能在服务商规定的范围内(例如长城宽带范围内)城域网内访问,甚至只能在同一个机房的局域网内访问。
於黾 2015-06-08
  • 打赏
  • 举报
回复
引用 2 楼 x3230835 的回复:
[quote=引用 1 楼 huanggreat 的回复:] 是不是双网卡!
问服务商,只说了句是IP映射的,然后就没有然后了。。。[/quote] 如果你远程连上去是通过的VPN,那么其实是VPN把你的主机虚拟成局域网里的一个IP,然后你通过局域网去连接服务器的 你需要知道它映射到外网的IP到底是什么 然后你需要断开VPN,再去连外网IP,看能不能连上.
於黾 2015-06-08
  • 打赏
  • 举报
回复
也就是说,你已经用外网服务器测试过了? 那么你需要了解真实服务器到底是怎么接入外网的. 你应该是通过VPN连接来远程的吧?这跟你从外网直接访问完全不是一个套路
  • 打赏
  • 举报
回复
引用 2 楼 x3230835 的回复:
[quote=引用 1 楼 huanggreat 的回复:] 是不是双网卡!
问服务商,只说了句是IP映射的,然后就没有然后了。。。[/quote] 这句话的意思是说,此IP是局域网IP,不是公网IP。服务商可能觉得你懂了,所以才“没有然后了”。你可以把你需要的说明白。
加载更多回复(14)

110,571

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧