与IP地址有关的那些点

背景

计算机间要实现网络通信,就必须要有一个合法的IP地址。

定义

IP地址是因特网上的某个设备的一个编号,IP地址一般由网络号、和主机号来组成。简写为:IP地址=网络地址+主机地址。

如IP地址192.168.100.102,它的构成如下:
网络地址:192.168.100.0
主机地址:0.0.0.102
IP地址=网络地址+主机地址=192.168.100.1
广播地址:192.168.100.255

一般内网的IP地址是以192.168开头的,公网可以是以100.110.开头。而内网的IP地址是私有地址,是不能直接在internet网络中应用的,需要转为公有地址。

使用

用网线直接连接的计算机或通过HUB(集线器)或普通交换机间接连接的计算机之间要想相互通讯,它们必须要在同一个网络,也就是说他们的网络地址必须相同,且主机地址必须不一样。

计算网络地址就是判断网络中的计算机在不在同一个网络,在就能通,不在就不能通。

子网掩码

IP地址是要搭配子网掩码来使用的。

子网掩码是用来判断任意两台计算机的ip地址是否属于同一子网络的根据。最为简单的理解就是两台计算机各自的ip地址与子网掩码进行and运算后,得出的结果是相同的,则说明这两台计算机是处于同一个子网络上的,可以进行直接的通讯。

子网掩码的长度和IP地址一样也是一串32位的二进制数字,只不过为人类的可读性和记忆性的方便,通常使用十进制数字来表示。二进制给机器看,十进制给人看。

子网掩码就是用来遮掩IP地址并划分网段的工具,根据遮掩的位数不同来划分不同的网段。

子网掩码还需要满足一个条件才可以使用:把子网掩码转换为二进制,它的二进制中1和0必须是连续的。

同一个IP地址根据不同子网掩码,会划分出不同的网络号和机器号。

计算网络地址

计算过程:将IP地址和子网掩码都换算成二进制,然后进行与运算,得到的结果就是网络地址。
如:IP地址:202.99.160.50 子网掩码是255.255.255.0
1)将IP地址和子网掩码分别换算成二进制
202.99.160.50换算成二进制为:11001010 01100011 10100000 00110010
255.255.255.0换算成二进制为:11111111 11111111 11111111 00000000
2)将二者进行与运算,得到结果为:11001010 01100011 10100000 00000000
3)将运算结果换算成十进制,就是网络地址:202.99.160.0
也就是说,从200.99.160.0到200.99.160.255都是同一个子网网段(网络号),里面的0-255号可以分配给不同的机器,0-255号都是机器的号码。

扩展

实际使用过程中,我们需要用ping命令来确定两台计算机是否可以通,如果ping不同,如何让ip不在同一个网段的计算机相互访问呢?

方法如下:

1.如果是同处于一个内部网络环境的,就是一个大的局域网。比bai如192.168.0.1/24和192.168.1.1/24,他们并不在一个网段内所以无法直接ping通。这时候可以把2台计算机接入路由器设置静态或者动态路由,计算机网关指向路由,这样icmp包就可以相互到达,双方ping通。

2.有一种情况是有一台机器是属于内网的ip如192.168.10.1,另外一台计算机是公网IP,如202.100.1.17,如果这2台要ping通的话,内网IP的那台机器只要能联网就能ping的通公网IP的计算机,而公网的计算机要访问内网计算机,需要通过VPN或者端口映射来完成访问。

3.如果2台计算机同时处于公网内,只要能联网肯定是可以ping通的。要ping通,必须B能回应消息,故B也会发查找网关的MAC arp请求,明显能通。假设B设置网关为另一个不存在的ip,那么B会一直arp请求,也是ping不通,若B没有设置网关,不会转发arp请求的,也ping不通。

参考:
https://blog.youkuaiyun.com/weixin_42724467/article/details/90293151
https://www.zhihu.com/question/56895036/answer/150953183
https://zhidao.baidu.com/question/552912715.html
http://www.eepw.com.cn/article/284131.htm
https://zhuanlan.zhihu.com/p/71534299
https://hsk.oray.com/news/5946.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值