首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >连接两个不同网络的问题

连接两个不同网络的问题
EN

Server Fault用户
提问于 2010-12-22 16:26:13
回答 3查看 625关注 0票数 3

我有两个网络: 192.168.13.0/24 (蓝色)和192.168.15.0/24 (绿色)。

计算机A只连接到13网.计算机B有两个接口,一个在每个网络中。

第三台计算机就像路由器一样,将13网连接到15网(只有这个方向)。

现在,我想把192.168.15.100从计算机A转到B。不幸的是,没有人给我答复。但是当我使用集线器而不是开关时,它就能工作了。

在我看来,ping数据包通过交换机到达路由器(这是A的默认路由/网关)。路由器将数据包发送回交换机B。也许B在它的15网接口上接收到它,但它的第15接口回答?这个是可能的吗?

问题是,B可能只有一个网关192.168.13.50,但我并不确定(B是一个配置可能性有限的嵌入式系统)。

有人能解释一下这里发生了什么吗?谢谢!

EN

回答 3

Server Fault用户

发布于 2010-12-22 17:03:06

在这两种情况下,ping从一个arp请求开始,以获取路由器的MAC地址。然后,ping消息与用于目的地的路由器一起包装在第2层分组中。

当您使用hub时会发生什么:

  • ping广播给所有客户端(Bx2和路由器),
  • B.13.100接口会丢弃数据包,
  • 但是它的15.100接口得到了它,它可能处于混乱的模式(忽略MAC目标),
  • 因此,B在其13.100接口上直接响应A。

使用switch

  • B不直接收到包裹。交换机知道A包被定向到路由器(感谢它的目标MAC地址),并且不涉及其他端口。
  • 路由器通常应该在其13.50接口上获取数据包,
  • 并应通过其15.50接口将其转发到B。
  • B应该在它的15.100接口上得到它,并从它的13.100接口中得到答复。
  • A应该直接得到它,但它没有。

路由器可能出了什么问题。

使用开关从A中尝试一个traceroute命令。

票数 3
EN

Server Fault用户

发布于 2010-12-22 16:41:36

你可能看到的是:

  1. A上的数据包输出接口(13.10)
  2. 通过路由器路由到B (15.100通过路由器)
  3. 由B (15.100)接收
  4. B去回复并说:“哦,嘿,我在同一个网络上!”
  5. B(13.100)上的数据包输出接口
  6. 由A (13.10)接收
  7. 比方说,我不指望从13.100滴的包裹里得到这个

您可以通过在发送ping时在A&B上运行数据包跟踪来确认这一点,查看标头并检查源地址和目标地址。

解决这一问题的唯一真正方法是在主机B上添加一个/32路由条目,以迫使数据包退出15.100,但这并不能很好地扩展。

票数 2
EN

Server Fault用户

发布于 2010-12-22 17:05:33

( a)从计算机A到计算机B做一个tracert,这应该会显示出它所采取的行动

b)在计算机B上设置的默认网关是什么?

( c)它是什么类型的开关?第二层,第三层?

( d)您能否尝试完全禁用计算机B上的13.100 NIC,然后重新启动该机器,并将其打开以查看其是否有效?

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/215344

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档