为啥ip开头不能用0、127、255?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为啥ip开头不能用0、127、255?相关的知识,希望对你有一定的参考价值。

如题 而且为什么主机地址不能指向0或255

0开头的地址例如:0.0.0.0,是一个无效地址
127开头的地址例如:127.0.0.1,是本机回环地址,用于测试tcp/ip协议安装是否正常
255开头的地址例如:255.255.255.255,是广播地址!

127.0.0.1到127.255.255.255整个网段都是回环地址!你不信拿自己机ping一下127.255.255.255,也是会通的,但返回的确实显示127.0.0.1
参考技术A 那么127.0.0.2是不是本机?能不能用?
naruto6006 - 门吏 二级没有说清楚.
其实这本身只是一个规定,没有原因.
参考技术B

首先不能用0的这个规定如果追溯,可以追溯至硬件层和数据链路层的设计(参考OSI七层参考协议),IP地址的首位大于等于1是设计之初就被决定的事,也是被物理限制的条件

127在网络层协议中会被解析为测试地址,会直接被网络层拦截处理,这是因为最早的IP协议(军方网络)为了兼容性和简短考量,并没有按1字节去处理,所以127就是双位地址能表示的最大数字(0-127共128个数字)

255则是可以使用的,但255开头一般会被识别为子网掩码,为了避免混淆而禁止使用

————————————————————————————————————

补充一下,naruto6006的答案中可能对回环地址的认知有一定错误

Win10 64bit

使用phpstudy 后,在电脑用localhost能访问 但用手机输入本地ip却不能访问 是为啥

有两种可能:
1、你的防火墙,或者安全策略阻止了,你可以开启80端口
2、你的设置没有绑定ip到站点
参考技术A 我也是这样绝了 不是防火墙问题 也不是别的问题

以上是关于为啥ip开头不能用0、127、255?的主要内容,如果未能解决你的问题,请参考以下文章

为啥localhost和127.0.0.1能访问tomcat,本机ip就不能访问

重学计算机网络 - 曾记否,查IP地址

为啥指定IP和DNS不能上网,而自动获取就能上网

第三章-IPV4

如何访问以127开头的IP局域网电脑

连接mysql不能用ip只能用localhost或者127.0.0.1的 解决办法