主机是怎么识别要访问的IP地址是不是和自己在同一网段的?

比如源主机IP 192.168.16.8 子网掩码255.255.255.0
目标主机IP 192.168.1.37 子网掩码255.255.128.0
源主机判断是不是和自己在同一网段时,是用源主机自己的子网掩码和目标主机的IP相与吗?还是用目标主机自己的子网掩码相与。谢谢啦

如果 TCP/IP 计算机需要与另一个网络中的主机进行通信,它通常通过称为路由器的设备进行通信。在 TCP/IP 术语中,主机中指定的、用于将主机子网链接到其他网络的路由器称为默认网关。本节解释 TCP/IP 如何确定是否将数据包发送到其默认网关以到达网络中的另一台计算机或设备。 当主机尝试使用 TCP/IP 与另一个设备进行通信时,它会使用已定义的子网掩码和目标 IP 地址针对子网掩码和其自己的 IP 地址进行比较。此比较结果会告诉计算机目标是本地主机还是远程主机。 如果此过程的结果确定目标是本地主机,则计算机只将数据包发送到本地子网。如果比较结果确定目标是远程主机,则计算机将数据包转发到其 TCP/IP 属性中定义的默认网关。然后,路由器负责将数据包转发到正确的子网。
https://support.microsoft.com/zh-cn/kb/164015
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-05-03
实际上要判断两台主机是否在一个网段,对於网络设备来说是使用ARP协议来进行的(具体介绍可以百科查找ARP工作原理,我就没必要copy了);不过对於你描述的情况,一般是使用源主机的IP地址和源掩码进行相与可以得到该源网络的网络地址,使用目标主机的IP地址和目标掩码进行相与可以得到该目标网络的网络地址,至於是不是在同一网段,相与之后的结果你一眼都能看出来的!追问

我想应该是用源掩码与目标IP相与,如果 在同一网段则用ARP寻找MAC通信,如果不 在同一网段则转发到默认网关。。。。因为我做过一个试验,一子网IP 192.168.1.37 掩码为255.255.254.0
在另一个子网里面的一台机器设置为IP192.168.0.8 当我用255.255.255.0掩码时能PING通192.168.1.37 当我用255.255.254.0时就不能PING通了。

追答

你的拓撲圖是怎么樣的?

追问

就这样了

路由器的LAN是92.168.0.8 WAN口接的另一个局域网 192.168.1.37

追答

哥,不會吧,中間是一個路由器?那么隨便你配什麽IP地址都應該能ping通啊(不過路由器不同接口要在不同的網段),對於路由器來說,直連的網絡是可以直接ping通的啊!你路由器接口配置的IP是怎樣的?

追问

LAN口 IP192.168.0.1 255.255.255.0 WAN 口 192.168.1.37 255.255.254.0 就是这么个情况了

追答

开启自动总结后,这两个不就是一个网段的嘛!你在路由器上show run,你路由的自动总结是不是开启的!关了试一下!

本回答被提问者采纳
第2个回答  2011-05-01
百度IP地址查找

主机是怎么识别要访问的IP地址是不是和自己在同一网段的?
当主机尝试使用 TCP\/IP 与另一个设备进行通信时,它会使用已定义的子网掩码和目标 IP 地址针对子网掩码和其自己的 IP 地址进行比较。此比较结果会告诉计算机目标是本地主机还是远程主机。 如果此过程的结果确定目标是本地主机,则计算机只将数据包发送到本地子网。如果比较结果确定目标是远程主机,则计...

怎么查看ip地址是不是在一个网段
4、要判断两个IP地址是不是在同一个网段,就是比较网络标识(网络地址),如果网络标识相同,就在同一子网,否则,不在同一子网。如下:

如何判断主机与目的地址是否在同一子网中
我们的ip地址是分为两段的,一段是网络号,一段是主机号。如:202.168.44.103,这是一个C类地址,一般C类地址前面的“202.168.44”这三节是网络号,后面的“103”是主机号,但是有时为了需要将这段地址再分成子网,这时就要在主机号里借位了,现在的网络号的二进制代码的位数是24位,你要是想...

internet上是主机是怎么识别或由什么来唯一标识的
其实是通过IP地址,在网络中有路由器负责转发IP地址,然后IP转发到了同一个网段,再通过MAC地址表来查到你的这台电脑()。我们计算机网卡的MAC是世界上唯一的。我们上网时的IP地址觉得不是192.168.什么的 可以打开www.hao123.com,在网页的下面有个IP地址查询,你可以看看自己的IP地址是多少啦 ...

nmap怎么扫描公网ip所在网段的其他存活主机?
系统检测功能,识别目标主机的操作系统及网络设备硬件特性。nmap支持自定义探测脚本编写,借助Nmap的脚本引擎(NSE)与Lua编程语言。2.2: 常用功能及原理 常用的主机存活发现参数如下:1:-sL 功能:仅列出指定目标的IP地址,不执行主机发现。原理:列表扫描,仅列举IP地址,不执行发现过程。在默认情况下,不...

...有一部分IP不能ping 服务器的IP地址 是什么问题??
你看一下IP地址及掩码长度是不是一致,如果不一致可能造成不在一个网段而无法通信。

为什么同一个路由器分配的IP地址不是在一个号码段上
有人会以为,一台计算机只能有一个IP地址,这种观点是错误的。我们可以指定一台计算机具有多个IP地址,因此在访问互联网时,不要以为一个IP地址就是一台计算机;另外,通过特定的技术,也可以使多台服务器共用一个IP地址,这些服务器在用户看起来就像一台主机似的。将IP地址分成了网络号和主机号两部分,...

怎么看电脑属于哪个网段什么是网段如何查看自己的IP属于哪个网段
大型局域网中,一般IP地址都是固定的,这样便于管理。软件只能查看同一局域网,也就是同一IP段内的用户。如果其中几台电脑的IP与你电脑所在的IP不在一个段内,就无法搜索到了。 ‘叁’ 怎样知道自己电脑所在的网段中的IP地址 你看一下你的网络连接就好了呀要不是就上sz800网上查一下本机IP ‘肆’ 请问一下子网...

...局域网中的电脑发数据,路由器怎么识别是哪台主机?
这是一个网络工程基础知识,在进行数据转发之前,首先要判断是不是在一个网段,判断的标准是用子网掩码与两个IP地址进行计算,如果不同就说明不在一个网段。这样路由器进一步判断是在哪一个接口所在网段,最后就从这个接口发送给目标主机。

不同网段不能通信的原因
是否处于同一个IP子网是发送主机自己判断的,他将自己IP地址+子网掩码与目标IP地址(主机是知道目标IP的)进行计算判断,如果相同,那么在进行ARP查找会将目标MAC地址置为全F,这样交换机收到后就会在内部广播;如果不同子网,则会将目标MAC地址设置为默认网关MAC地址(如果不知道,会通过ARP查找默认网关...

相似回答