24、Linux 路由管理

使用 route 命令可以添加主机的路由信息,但是一旦系统重启相关的设置信息就会丢失,那么如何设置一个重启也不会丢失的路由信息呢?

查看网卡连接信息

bash 复制代码
[root@long90 ~]# ifconfig
ens160: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.8.8  netmask 255.255.255.0  broadcast 192.168.8.255
        inet6 fe80::20c:29ff:feb7:1176  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:b7:11:76  txqueuelen 1000  (Ethernet)
        RX packets 6060  bytes 959192 (936.7 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4625  bytes 696550 (680.2 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ens224: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.8.88  netmask 255.255.255.0  broadcast 192.168.8.255
        ether 00:0c:29:b7:11:80  txqueuelen 1000  (Ethernet)
        RX packets 12751  bytes 14852736 (14.1 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6238  bytes 419927 (410.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

现在有两块网卡,这两块网卡的 ip 地址分别是 192.168.8.8192.168.8.88 ,假如发送到 192.168.1.0/24 这个网段的数据包需要通过 ens160(192.168.8.8) 这块网卡发送出去,而发送到 192.168.100.0/24(192.168.8.88) 这个网段的数据包需要通过 ens224 这块网卡发送出去,我该如何设置呢?

一、临时添加路由信息

bash 复制代码
[root@long90 ~]# route add -net 192.168.1.0/24 gateway 192.168.8.8 dev ens160
[root@long90 ~]# route add -net 192.168.100.0/24 gateway 192.168.8.88 dev ens224
[root@long90 ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.8.2     0.0.0.0         UG    0      0        0 ens224
0.0.0.0         192.168.8.2     0.0.0.0         UG    100    0        0 ens160
192.168.1.0     192.168.8.8     255.255.255.0   UG    0      0        0 ens160
192.168.8.0     0.0.0.0         255.255.255.0   U     0      0        0 ens224
192.168.8.0     0.0.0.0         255.255.255.0   U     100    0        0 ens160
192.168.100.0   192.168.8.88    255.255.255.0   UG    0      0        0 ens224
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0

二、永久添加路由信息

bash 复制代码
[root@long90 ~]# nmcli connection show
NAME       UUID                                  TYPE      DEVICE
ens160     91515114-d92d-45bd-95a2-11dd300d8073  ethernet  ens160
ens-test1  f9e39cae-fb5d-43b7-851b-417bd114d5e2  ethernet  ens224
virbr0     5ed026aa-6049-45f9-90ce-1514be0d2848  bridge    virbr0
ens-test0  5d5f6a2b-de16-41ce-8745-80f21d2b5cd4  ethernet  --   
 
[root@long90 ~]# vim /etc/sysconfig/network-scripts/route-ens160
192.168.1.0/24 via 192.168.8.8 dev ens160

[root@long90 ~]# vim /etc/sysconfig/network-scripts/route-ens-test1
192.168.100.0/24 via 192.168.8.88 dev ens224

[root@long90 ~]# systemctl restart NetworkManager

[root@long90 ~]# nmcli connection up ens160
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/13)
[root@long90 ~]# nmcli connection up ens224
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/14)

[root@long90 ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.8.2     0.0.0.0         UG    100    0        0 ens160
0.0.0.0         192.168.8.2     0.0.0.0         UG    101    0        0 ens224
192.168.1.0     192.168.8.8     255.255.255.0   UG    100    0        0 ens160
192.168.8.0     0.0.0.0         255.255.255.0   U     100    0        0 ens160
192.168.8.0     0.0.0.0         255.255.255.0   U     101    0        0 ens224
192.168.100.0   192.168.8.88    255.255.255.0   UG    101    0        0 ens224
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0

# 路由经由信息

bash 复制代码
[root@long90 ~]# ip ro sh
default via 192.168.8.2 dev ens160 proto static metric 100
default via 192.168.8.2 dev ens224 proto static metric 101
192.168.1.0/24 via 192.168.8.8 dev ens160 proto static metric 100
192.168.8.0/24 dev ens160 proto kernel scope link src 192.168.8.8 metric 100
192.168.8.0/24 dev ens224 proto kernel scope link src 192.168.8.88 metric 101
192.168.100.0/24 via 192.168.8.88 dev ens224 proto static metric 101
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 linkdown
相关推荐
郝学胜-神的一滴19 小时前
Linux线程编程:从原理到实践
linux·服务器·开发语言·c++·程序人生·设计模式·软件工程
_OP_CHEN19 小时前
【Linux系统编程】(十四)深入 Linux 内核:进程优先级调度与切换的底层逻辑全解析
linux·运维·linux内核·进程·进程切换·进程优先级·调度算法
Orange裴19 小时前
Kali linux2025.3 安装nessus(Mac M4芯片)
linux·运维·macos·kali linux
✿ ༺ ོIT技术༻19 小时前
服务端高并发分布式结构演进之路
运维·服务器·redis·分布式·架构
jinxinyuuuus20 小时前
GTA 风格 AI 生成器:提示词工程、LLM创造性联想与模因的自动化生成
运维·人工智能·自动化
派大鑫wink20 小时前
Python 自动化办公实战:Excel 批量处理 + 邮件自动发送(附完整源码)
linux·windows·github
RPA机器人就用八爪鱼20 小时前
RPA重塑IT运维:自动化破局数字化转型痛点
运维·自动化·rpa
Sleepy MargulisItG20 小时前
【Linux网络编程】TCP Socket
linux·网络·tcp/ip
胡萝卜3.020 小时前
构建安全的C++内存管理体系:从RAII到智能指针的完整解决方案
运维·开发语言·c++·人工智能·安全·智能指针·raii
Watermelo61720 小时前
【前端实战】从 try-catch 回调到链式调用:一种更优雅的 async/await 错误处理方案
前端·javascript·网络·vue.js·算法·vue·用户体验