打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
端口数能否超过65535?
userphoto

2011.09.21

关注
ay暗影 , 2011/06/08 17:13 , 技巧笔记 , 评论(0) , 阅读(205) , Via 本站原创
| |
原帖内容如下:
标题:谁把终端改成了高端口?,作者:ddoop。
碰到一棒子的服务器~3389端口变成了78650
通常服务器的端口都是1-65535他来个顶你肺啊78650。。。情况如下


害我都连接不上桌面.奇怪的是~~query user的时候居然发现如下


    你说怪不怪。。。把端口改回来后压力是没有了~可为什么我连接不上~~他就能连接上呢?
相关资料如下:
    这种问题我还真是头一次听说,经查阅相关资料得知:
看看专家告诉你答案:
    哈哈 tcp port 大小为 16 bit 是否能超过 65535 可想而知啦!!
    不过 Windows 会有一个问题 telnet www.sina.com.cn 65616 大家可以测试一下 !
    这实际上是访问 www.sina.com.cn 的 80 端口,为什么呢?如果想不出来就回学校重新学去!
    注:65616 - 65536 = 80
main()
{
unsigned short int tcp_port=65616;
printf("%u",tcp_port);
}
    有些软件,比方说 Windows 的 telnet,可能用了 32 bit 的数据类型记录 port,这样 port 表面上看到是可以超过 65535。
    但是 tcp header 明确定义了 tcpport 为 16 bit,那即便某些应用程序使用了 32 bit 的数据类型,最终结果也是被强制转换。
    简单的来说,就是:
    1、在应用程序里边可以使用4字节或更多字节来储存端口号。
    2、当调用了系统的tcp/ip通讯之后,系统底层强制将大于65536的端口转换回正常范围。
    3、并且在转换过程中,不会返回任何错误信息,一切都悄然进行了,所以应用层的程序不会有任何特别反应,这一切都在系统底层悄然完成了。
    4、转换的方式为:端口号 - 65536 = ?,问号处既是转换结果。
    5、如果转换后的端口还超过65535呢?那就继续转换,直到小于等于65535为止,所以 telnet www.baidu.com 131152 也是可以完美执行的,(65536 + 65536 + 80 = 131152)。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
路由器怎么防网络中的恶意攻击
怎么测试Windows系统中的服务器端口是否开放?
怎么在Linux服务器上测试TCP/UDP端口的连通性?
udp端口怎么测试
Ubuntu中Tomcat更改80端口
linux 检测远程端口是否打开
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服