一、路由的分类

1、软路由:依靠软件+系统设置完成路由功能。常见操作就是刷openwrt固件

2、硬路由:专业的路由设备,比如华为路由器

二、mac地址表、ARP表、路由表概念

1、mac地址表记录MAC地址和端口的映射关系,代表了交换机从哪个端口学习到了某个MAC地址,交换机把这个信息记录下来,后续交换机需要转发数据的时候就可以根据报文的目的MAC地址去根据MAC地址表转发数据。

华为网络设备上可以通过dis mac-address 查看本地mac的地址表的信息

2、ARP表:记录IP地址和MAC地址对应关系的表项

华为网络设备上可以通过dis arp 查看本地arp表的信息

<HUAWEI-YEWU>dis arp all
IP ADDRESS      MAC ADDRESS     EXPIRE(M) TYPE INTERFACE      VPN-INSTANCE
                                          VLAN
------------------------------------------------------------------------------
192.168.0.6     e483-2607-b2fb            I -  Vlanif8
192.168.0.5     5046-4ab9-f751  20        D-0  XGE0/0/32
                                          8
192.168.2.254   e483-2607-b2fb            I -  Vlanif20
192.168.2.145   e43d-1a2c-f484  18        D-0  Eth-Trunk5
                                          20
192.168.2.144   e43d-1a2c-f43c  10        D-0  Eth-Trunk6
                                          20
192.168.2.146   e43d-1a2c-f460  10        D-0  Eth-Trunk4
                                          20
192.168.2.147   e43d-1a2c-e11c  10        D-0  Eth-Trunk3
                                          20
192.168.2.148   e43d-1a2d-2fb8  10        D-0  Eth-Trunk2
                                          20
192.168.2.149   e43d-1a2d-3120  19        D-0  Eth-Trunk1
                                          20
------------------------------------------------------------------------------
Total:9         Dynamic:7       Static:0     Interface:2

3、路由表:路由表就是路由器用于指导数据包如何转发的表项,记录了去往目的IP的下一跳去哪里

华为网络设备上可以通过display  ip routing-table 查看本地路由表的信息

三、Linux  路由

1、三种查看方式

(1)netstat -nr

Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         10.1.1.1        0.0.0.0         UG        0 0          0 br0
10.1.1.0        0.0.0.0         255.255.255.0   U         0 0          0 br0
10.1.1.0        0.0.0.0         255.255.255.0   U         0 0          0 br0
10.1.1.0        0.0.0.0         255.255.255.0   U         0 0          0 br0
10.1.4.0        0.0.0.0         255.255.255.0   U         0 0          0 wg0
172.17.0.0      0.0.0.0         255.255.0.0     U         0 0          0 docker0
172.19.0.0      0.0.0.0         255.255.0.0     U         0 0          0 br-69fc5c18a652
192.168.32.0    0.0.0.0         255.255.240.0   U         0 0          0 br-6cac1b29cce9
192.168.48.0    0.0.0.0         255.255.240.0   U         0 0          0 br-fc595b0fe16c
192.168.64.0    0.0.0.0         255.255.240.0   U         0 0          0 br-96db9a133881

(2)route -n

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.1.1.1        0.0.0.0         UG    425    0        0 br0
10.1.1.0        0.0.0.0         255.255.255.0   U     425    0        0 br0
10.1.1.0        0.0.0.0         255.255.255.0   U     425    0        0 br0
10.1.1.0        0.0.0.0         255.255.255.0   U     425    0        0 br0
10.1.4.0        0.0.0.0         255.255.255.0   U     0      0        0 wg0
172.17.0.0      0.0.0.0         255.255.0.0     U     0      0        0 docker0
172.19.0.0      0.0.0.0         255.255.0.0     U     0      0        0 br-69fc5c18a652
192.168.32.0    0.0.0.0         255.255.240.0   U     0      0        0 br-6cac1b29cce9

(3)ip  route (list/show)

default via 10.1.1.1 dev br0 proto static metric 425
10.1.1.0/24 dev br0 proto kernel scope link src 10.1.1.3 metric 425
10.1.1.0/24 dev br0 proto kernel scope link src 10.1.1.85 metric 425
10.1.1.0/24 dev br0 proto kernel scope link src 10.1.1.84 metric 425
10.1.4.0/24 dev wg0 proto kernel scope link src 10.1.4.1
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1
172.19.0.0/16 dev br-69fc5c18a652 proto kernel scope link src 172.19.0.1
192.168.32.0/20 dev br-6cac1b29cce9 proto kernel scope link src 192.168.32.1
192.168.48.0/20 dev br-fc595b0fe16c proto kernel scope link src 192.168.48.1

2、添加路由: 

route    add    [-net|-host]  target [netmask Nm] [gw Gw] [[dev If]

目标:192.168.40.211 网关:192.168.40.1(必须与本地地址在同一网络)

route add -host 192.168.40.211 gw 192.168.40.1 dev ens33 

ip route add TARGET via GW [dev IFACE] [src SOURCE_IP]

(dev表示流出的接口,via:经由下一跳)

ip route add 192.168.1.3 via 172.16.0.1 dev eth0

ip route add 192.168.0.0/24 via 172.16.0.1

 注意TARGET中的格式:

 主机路由:IP

 网络路由:NETWORK/MASK

 ip route add 192.168.40.132 via 192.168.40.1 dev ens33 

3、 删除路由:

ip route del IP

写在配置文件永久生效

vim    /etc/rc.local

实际案例

uos系统桌面版,ip也配置在桌面(网卡配置文件为空),ansible setup模块获取不到ip地址

ip route add default via 192.168.1.1 dev  网卡名

4、多网卡路由的问题(有待整理)

 Linux ARP特性
Linux主机有这么一个特性,假设我们的主机上有两块网卡,比如eth0,eth1 当arp请求eth1的mac地址的时候,eth1会答复,这个是理所当然的,但是eth0也会“好心”的帮eth1回答这个arp请求; 要防止这样的话,就需要更改下我们的一些内核参数:
net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.all.arp_ignore = 1

正常情况下只写第二条就是了,all 是指所有设备的interface,当all和具体的interface比如lo,按照最大的值生效;

另外一个linux的特性就是,对于一个从realserver发出的arp请求,其源IP是VIP,而出口不会是lo,这里假设是eth0,那么这个arp请求包里里面,源IP就是VIP,源MAC是eth0的mac,目的IP是网关,那么路由器在接收到这个请求的时候,会将将自己的相应接口的硬件地址放在arp响应包中,同时将请求包中的源IP及MAC放在arp高速缓存中,那这下可就乱套了,就会使真正的VIP得不到正确的请求了.

这是因为,正常的情况下,arp的请求中源IP是出去的所在接口的地址,mac也是出去的接口的mac,但linux在默认情况下却不是这样的,如果一个接口发出的arp请求须经另一个出口出去的时候,源IP就不是所出去接口的IP,那么将内核参数设置为 2 相应的解决了这个问题。

net.ipv4.conf.lo.arp_announce = 2
net.ipv4.conf.all.arp_announce = 2

https://www.cnblogs.com/kaishirenshi/p/10394754.html

实践:物理服务器两个光口配置了bond,一个电口配置静态ip,笔记本直连电口,ping不通局域网内部的ip。

添加路由

sudo ip route add 192.168.20.103 via 192.168.20.254 dev bond0

四、windos 路由

1、添加路由

route add 80.47.1.0 mask 255.255.255.0 160.5.1.254

注:要去的网段:80.47.1.0    本机的网关:160.5.1.254

2、追踪路由

tracert  10.72.64.10
traceroute   10.72.64.10  ##Linux版本

五、网络设备路由

1、路由器设备

两种选择,第一个是所有都映射出去,第二个只映射指定端口

网络学习之路由

华为路由器将 0/0/3 接口开启地址转换(外部地址 10.xx.8.144 转到内部 192.168.2.xx)

system-view

interface gigabitethernet 0/0/3

nat server protocol tcp global 10.xx.8.144 inside 192.168.2.xx

 

 
 
 
2、交换机设备
 
 
 
 
 

相关文章:

  • 2021-08-06
  • 2021-10-05
  • 2022-03-02
  • 2021-05-24
  • 2021-12-15
  • 2021-08-24
  • 2021-06-18
  • 2021-07-08
猜你喜欢
  • 2021-06-07
  • 2021-12-24
  • 2021-11-15
  • 2021-08-04
  • 2021-07-07
  • 2021-12-12
相关资源
相似解决方案