ip地址的符号:
ip地址由四个字节组成。为了方便读写,每个字节用0-255的数字表示,字节之间用。例如:
10.10.152.235
有时候我们会看到这样一个ip:
10.10.152.235/24,
后面的/24表示子网掩码,24表示子网掩码上有24个1,相当于255.255.255.0。
ip地址和子网掩码的按位and运算产生网络id。
剩下的部分就是子网中的主机号(主机id,当然这个名字稍微有点问题,因为现在不只是主机有ip了,暂且这么称呼)。
特殊ip地址段:
127.x.x
这是最熟悉的本地环回地址,相当于windows和linux上的localhost。
我们习惯使用127.0.0.1。事实上,
如果在命令行ping127.0.0.1-127.255.255.254之间的任何地址,结果都是一样的,它们是等价的。
正常的网络数据包从ip层进入链路层,然后发送到网络。
发送到环回地址的包直接在ip层短路,即发送到ip层的包直接被ip层接收,不再向下发送。
专用网络地址段:
10.x.x.x、192.168.x.x、172.16.x.x~172.31.x.x、169.254.x.x
这些私有网络地址段是不允许出现在互联网上的,主要用途是留给内网使用。
这可以在一定程度上缓解ip地址不足的问题。
大企业的oa网络更多使用10地址段,因为这是a类地址段,包含了很多ip。
小型公司更经常使用192.168.0地址段。
而169.254主要分配给dhcp服务。
保留地址段:
128.0.x.x、191.255.x.x、192.0.0.x、233.255.255.x
这些地址是保留的、未分配的并且没有明确的用途。r其他特殊知识产权:
255.255.255.255是全局广播地址。
地址全是1是子网广播地址,例如192.168.1.255。
主机号全为零的地址是代表子网的网络地址,例如192.168.1.0。
一个很特别的ip:0.0.0.0。
这个ip相当于java中的this,代表当前设备的ip。
我们在java编程中使用serversock
ip地址100以c类地址开始。
先将十进制100转换成二进制11001000,左起三位是网络标识,即110,可以判断为c类地址。