PING的几个小问题!

两台PC用交叉线连接,均只配置了IP和子网掩码,如下:
(答案可能对你很简单,但劳烦写出判断依据。。。)
主机 A:192.168.1.1/24
主机B:192.168.1.2/16
从主机A来PING主机B能PING通吗?
为什么?

主 机C:192.168.128.1/23
主机D:192.168.128.2/24
从主机C来PING主机D能PING通吗?
为 什么?

主机E:192.168.1.1/16
主机F:192.168.0.1/24
从主机E来PING主机F能PING 通吗?
为什么?

 

1、能,道理很简单:对方IP地址在双方自身路由表的寻址范围内
2、同上
3、不能,E发出的ICMP_ECHO_REQUEST能到达 F,但F无法返回ICMP_ECHO_REPLAY,因为F没设网关,对E的寻址超越F本机路由表范围。

3、此外还有一种可能是E发出对F的ARP查询广播请求,但F根本不响应,道理与上类似,若ARP层次的通信不能完成,然后下面就没有然后了,有兴趣可抓 包证实。

 

1.主机A:192.168.1.1/24 -> 192. 168. 1. 1 to 192. 168. 1. 254
  主机B:192.168.1.2/16 -> 192. 168. 0. 1 to 192. 168. 255.254
  A、B实际是同一个网段,能相互ping通,实际上C类地址掩码是255.255.255.*

2.主机 C:192.168.128.1/23 -> 192. 168. 128. 1 to 192. 168. 129. 254
  主机D:192.168.128.2/24 -> 192. 168. 128. 1 to 192. 168. 128. 254
  C地址范围包含D地址范围,仅是128.1/23和128.2/24能相互ping通

3.主机E:192.168.1.1/16 -> 192. 168. 0. 1 to 192. 168. 255. 254
  主机F:192.168.0.1/24 -> 192. 168. 0. 1 to 192. 168. 0. 254
  E地址范围包含F地址范围,E能ping通F,F不能ping通E

 

 

 

 

 

我认为的 正解:
1.可以互PING通。
2. 可以互PING通。
3.谁都PING不通对方。
(但F能收到E从网线发出的用来请求F的MAC地址的ARP广播包,但E会将含有自己 MAC地址的ARP单播包转发向网关,当然罗,网关没设嘛,E也就收不到这个ARP单播包了。)

现实中,一根交叉线,两台主机,做实验, 确实如此。
(注意:一定要把万恶的防火墙关掉,有些防火墙调成禁用后,还是会过滤数据包。)

引 用 4 楼 just4 的回复:
1.主机A:192.168.1.1/24 -> 192. 168. 1. 1 to 192. 168. 1. 254
主机B:192.168.1.2/16 -> 192. 168. 0. 1 to 192. 168. 255.254
A、B实际是同一个网段,能相互ping通,实际上C类地址掩码是255.255.255.*

2. 主机C:192.168.128.1/23 -> 192……



最接近我的想法,但是还 有些错误:
a.PING是个来回的过程,即源主机发ICMP_REQUEST包,目的主机收到的话,发ICMP_REPLY包。故你的回答“3.主机E:192.168.1.1/16 -> 192. 168. 0. 1 to 192. 168. 255. 254
主机F:192.168.0.1/24 -> 192. 168. 0. 1 to 192. 168. 0. 254
E地址范围包含F地址范围,E能ping通F,F不能ping通E
”有错,但你紧接着在5楼 纠正了。

b.每一条的第一行、第二行正确、精准。但第三行的结论的表述方式有问题。
我认为 ,不能说“*地址范围包含*地址范围”,首先不准确,“*”是主机,没有“范围”,“范围”说的 是主机的IP所在的子网的IP地址的范围。
其次,这里的重点在于“范围”里的一个点,当然说范围包含也行,只不过不是核心。
如,对于1,我认为 ,第3行结论应该为:
A的IP是 192.168.1.1,在B所处的子网的范围“192. 168. 0. 1 到 192. 168. 255.254”里,故A发出的请求B的MAC地址的ARP广播包能被B收到。
B的IP是192.168.1.2在A所处的子网的范围“192. 168. 1. 1 到 192. 168. 1.254”里,故B返回的包含自己MAC地址的ARP单播包能被A收到,并且B发单播包时将A的MAC地址与其IP地址的映射关系写入自己的ARP缓 存。
至此A到B,B到A已通。
A再从网线发出ICMP_REQUEST包,B收到。B再从网线发出ICMP_REPLY包,A收到。
(关 于其中封装与解封装的过程就略了)

以此类推,2“能”及3“不能”的原因就类似了,不再赘述。


出这三题的意图如 下:
发现一些教科书混淆概念,当然这与我卑微的理解能力有莫大的关系。

1.本题所示的模糊概念 :主机A所处的子网与主机B所处的子网相同,可以PING。反过来,若不同,则不行。

按模糊概念而导致的结果 :主机A所处子 网:192.168.1.0/24;主机B所处子网:192.168.0.0/16;所处子网不同,所以互PING都不通。

实际测试结果 :A与B可以互PING通。

结论 :本概念是模糊的。
首先,“相同”看你怎么理解了,你马路上 找一个人问他192.168.1.0和192.168.0.0一模一样吗?看他怎么回答。。。这个相同不相同,不在于“192.168.1.0”和 “192.168.0.0”这两个字符串的值相同不相同。而在于A要给B发包,A就要看B和自己在不在一个子网的IP地址范围内,如上一部分的解析,本质 是A“认为” B和自己在自己所处的子网的IP地址范围内,同 理,B返回也是因为B“认为”A和自己在自己所处的子网的IP地址范围内。

其次,A有未卜先知的能力吗?A在发给B四个 ICMP_REQUEST包之前,已经知道B的掩码为/16了?故这种分开来,自己IP按位与自己掩码,再比较所得字符串的值的方法是错误的。



2. 本题所示的错误概念 :“目前,在Internet网络采用子 网掩码来确定IP地址中的网络地址和主机地址。子网掩码与IP地址一样也是32bit,并且两者是一一对应的。(开始混了)并规定,子网掩码中数字为“1”的所对应的IP地址中的部分为网络号,为“0”的对应的则是主机号。网络 号和主机号结合起来,才构成一个完整的IP地址。同一网络中的主机IP地址,其网络号必须是相同的(混结束了) ,这个网络称为IP子网。” (引用某CCIE出的认证指南)

按错误概念而导致的结果 : 主机C的网络位为192.168.1000000(6个0);主机D的网络号192.168.1000000(7个0),故因为主机号不一样,所以互 PING都不通。

实际测试结果 :C与D可以 互PING通。

结论 :本概念已经不属于模糊 的范畴了。是在混淆视听。理由是会理解成“主机C的网络位为192.168.1000000(6个0);主机D的网络号 192.168.1000000(7个0),故因为主机号不一样,所以互PING都不通。”

3.本题所示的模糊概念 :主机E所处的子网与主机F所处的子网相同,可以PING。反过 来,若不同,则不行。

按错误概念而导致的结果 : 主机E所处子网:192.168.0.0/16;主机F所处子网:192.168.0.0/24;都是192.168.0.0嘛,所以E与F处在同一个子 网中,可以互PING通。

实际测试结果 :E 与F谁都PING不通谁。

结论 :本概念是模 糊的。理由同1。注意同于不同,到底说的是什么。

当然,以上只是我自己的 理解。来源:英超直播

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值