目录
- 静态路由
- 静态路由指明下一跳和指明端口的区别
- 代理ARP
我们知道,跨网络通信需要路由
路由有三种类型:
1.直连路由。 自动产生的路由,当网络设备连接到同一网络时,他们可以自动学习到对方的存在。自动学习相邻网络设备的直连信息
2. 静态路由。手工配置的路由,网络管理员手动配置路由表,指定网络设备如何到达目标网络
3. 动态路由。路由设备互相学习产生的路由,路由设备可以通过某种路由协议与相邻路由器交换信息,学习整个网络的拓扑结构,并自动更新路由表
静态路由
举个例子:
如图,192.168.1.1去ping192.168.2.1,ping不通,因为AR1不认识192.168.2.1
AR1只认识192.168.1.254、10.0.0.1、192.168.1.1和10.0.0.2,后两者是直连路由
为AR1添加一条静态路由使192.168.1.1能够ping通192.168.2.1
命令 关键词 目标网络号 掩码 出接口或下一跳(对端IP)
ip route-static 192.168.2.0 24 g0/0/1或10.0.0.2
出接口可以理解为走的方向,下一跳理解为目的
由PC1不认识PC2,所以PC1去ping PC2的时候会先发ARP包。添加静态路由之后,arp request包能够发到192.168.2.1,但reply包回不来。同样,因为AR2不认识192.168.1.1,所以也要在AR2添加一条去往192.168.1.1的静态路由
静态路由指明下一跳和指明端口的区别
添加静态路由,指明下一跳地址
ip route-static 192.168.2.0 255.255.255.0 10.0.0.2
如下图,添加静态路由之后,PC1去pingPC2,路由器接受到request包会先看S那条路由,发现要先去往10.0.0.2,然后又找到C这条路由,要去10.0.0.0/24这个网段需要经过0/0/0端口,于是将请求包丢给0/0/0
添加静态路由,指明端口
这个时候,只需查询S这条路由,请求包就会直接丢给0/0/0端口
代理ARP
代理ARP:对于没有配置缺省网关的计算机要和其他网络中的计算机实现通信,网关收到源计算机的 ARP 请求会使用自己的 MAC 地址与目标计算机的 IP地址对源计算机进行应答。
我们先来看看思科模拟器中,路由器学到的Mac地址
R2路由器的ARP表中,192.168.2.1的Mac地址为000D.BD9C.6301
但是PC1的Mac地址并不是6301
6301是R3的Mac地址
这是因为R3接收到请求包时,一看要解析192.168.2.1这个IP,虽然这个IP不是自己这个网段的(0/0/0接口的网段是10.0.0.0/24),但由于直连路由,他知道怎么走,于是骗R2说自己是192.168.2.1,把自己对应接口0/0/0的Mac地址告诉R2
在华为模拟器中,如果添加静态路由指定端口,依然是ping不通的,因为华为模拟器中的路由默认不开启代理APP,R3收到请求包时,虽然知道怎么走,但是这个IP不是自己这个网段的,不能够解析这个地址
当开启了代理ARP时,就可以指定端口来添加静态路由
文章参考视频https://b23.tv/0lCXlGp