电脑IP192.168.149.6/24

网关192.168.151.254

可联网通讯

向不同网段的网关发送arp

如果能得到arp响应,那么就能完成乙太网封装,发送数据,反之则不能。

那么如何让网关回应arp呢?

一种方法是在网关介面上配置多个不同网段的IP,因为在同一个广播域里,这些IP都能响应ARP,单必须至少有一个IP和电脑同网段,否则回包网关不知道应该往哪里路由。

另一种方法是在网关设备上配置proxy arp,H3C的交换机arp代应答有两种,一种只应答同网段目的IP(local-proxy-arp),另一种应答不同网段目的IP(proxy-arp),两种可以同时启用,启用代应答后,网关设备会以三层介面的mac应答arp请求,但是这种方法回包有问题,只能去不能回,如果是UDP的话,是可以发出包的。

知道IP地址和子网掩码,怎么算出网路地址?怎么算出主机地址??

www.zhihu.com图标

抓一下arp


网关下地址池是可以在三层交换做配置的,一个网段254个地址不够用,可以配置子网掩码扩展,不一定必须网关和IP地址在一个地址段


@foxgab 回答正解,他说的是底层原理,具体到你这个示例情况,我给你举个好理解点的例子。

假设你电脑的IP是 192.168.0.3 / 24 而网关的IP是192.168.1.1 你在客户机上只能看到网关的IP,看不到网关的子网掩码长度的。 网关可能是192.168.1.1/23 或192.168.1.1/16 (255.255.0.0) 在这样的情况下,你用192.168.0.3去访问网关192.168.1.1的时候, 如 @foxgab 所说,客户机访问网关的时候,是不关注网关地址是否和自己同网段的,只管广播询问,广播:请问192.168.1.1是谁(MAC地址是多少)。 路由器收到广播后,发现192.168.1.1是自己,他要向192.168.0.3回复一个单播。 因为路由器的子网是23或16,那么192.168.0.3与192.168.1.1对路由器而言,是在同一个网段的。所以就可以直接回复给192.168.0.3。 它们之间就能正常通信了。

这里涉及到一个经常使用的概念叫路由汇总。 比如你网关下面网路很大,然后给下面各个子网分配了B类地址段。172.16.10.x/24 172.16.20.x/24 .... 网关都可以统一设置为172.16.0.1 / 16。路由汇总可以减少路由条目,提高路由查询效率,便于管理等。


拓扑图

交换机下vlan介面的配置

电脑配置
测试结果,10.0.0.1为路由器内网地址,0.2为核心交换与路由器内网介面互通的地址

实际上非常简单,只需要给同一个vlan介面启用sub地址,然后手动配置电脑的IP地址即可。不过一般情况下同一个vlan内配置sub地址,也会配合全局地址池使用相应网段内的网关,而不会这样跨网段使用。

这里要说明一点,我是用模拟器模拟的,想做的更深一点,模拟器不支持,模拟器上不支持通过DHCP分配从地址的方式,你要是实机可以试一下不手动分配,直接dhcp select interface,或者通过两个地址池分配。不过我印象中之前配置的时候,dhcp分配从地址下来的网关也是从地址这个网段的。也不知道你电脑是不是手动配置的ip,如果是的话就没啥问题,是dhcp分配的话就得在研究研究了。

华为V200R010及之后的版本支持配置vlanif介面配置sub地址和全局地址池方式,为终端分配IP地址。


电脑也是一种路由器,是特殊的路由器


推荐阅读:
相关文章