路由表示做什么用的?在linux环境中怎么来配置一条默认路由?

昨天加班到半夜,公司网络突然瘫痪了。
我赶紧检查路由器,发现隔壁大楼的线路已经断了。
我打开终端并输入 ip Route Show。
看着那些跳跃命令,我突然想到路标就像一张城市地图,每个节点都显示了上一个和下一个路口。
我第一次接触Linux是在2 003 年,当时的路由表比现在复杂得多,一切都是手动配置的。
等等,还有一件事。
当我在大学上网络课时,老师用粉笔在黑板上画了三个路由器。
这些链路都标有成本,表示这是 OSPF 算法的基础。
现在想想,那些命令行参数,每个字母都像一个士兵,追随OS指挥官。

如何配置Linux静态路由 永久路由添加实现步骤

让我告诉你Linux路由。
这件事当时确实让我很为难。

我正在一台小型 Windows Server 2 008 R2 计算机上工作,我希望它能够访问公司 Intranet。
内网是1 9 2 .1 6 8 .2 .0网段,网关是1 9 2 .1 6 8 .1 .1 ,我的服务器是1 9 2 .1 6 8 .1 .1 00,连接的是eth0接口。
起初,我乱搞了一下,使用 ip route add 1 9 2 .1 6 8 .2 .0/2 4 via 1 9 2 .1 6 8 .1 .1 dev eth0。
哎,我当时能ping通,就以为大功告成了。
结果第二天重启服务器就ping不通。
我惊呆了。

查资料后发现这个命令是临时的,重启后就会消失。
它需要永久化。
当时的服务器是CentOS 6 .5 ,使用的是老式网络服务,而不是现在流行的网络。

我正在想办法让它永久化。
我在网上看到可以将 POSTUP="ip route add..." 添加到 ifcfg-eth0 文件中。
我进入 /etc/sysconfig/network-scripts/ 目录,找到 ifcfg-eth0 文件,并添加行 POSTUP="ip route add 1 9 2 .1 6 8 .2 .0/2 4 via 1 9 2 .1 6 8 .1 .1 dev eth0"。
保存后,重启网络服务,如预期,网络服务重启。
结果呢?一旦网络服务重启,服务就关闭,直接断开服务器。
折腾了半天,发现执行脚本时网络接口没有初始化,导致命令执行失败。
我当时真的很生气。
这不是我们在生产环境中可以做的事情。

然后我尝试了另一种方法,即通过1 9 2 .1 6 8 .1 .1 dev eth0创建一个内容为1 9 2 .1 6 8 .2 .0/2 4 的route-eth0文件。
这个方法要好得多。
重启网络服务后,路由始终存在且稳定。
这个方法当时我很熟悉。
后来又换了几台CentOS 7 、8 的机器。
虽然命令行变了,但是思路还是一样的。

后来公司来了一些新同事,使用的是Ubuntu 1 8 .04 和netplan。
我让他们做路由,他们过来问我怎么做。
我一看,哦,和CentOS完全不一样啊。
他们将路由 ip add... 添加到其 /etc/network/interfaces 文件中。
然后他们发现他们的系统升级到2 0.04 并且他们直接使用netplan。
他们必须将路由条目添加到 /etc/netplan/01 -netcfg.yaml 文件中。
我要求他们按照在线教程进行操作,他们确实做到了。

看来,Linux的路由配置在不同的发行版中是不一样的,而且方法也有很大的不同。
在旧的 CentOS 系统中使用网络脚本非常容易,在新的 Debian/Ubuntu 系统中使用接口或 netplan 非常容易。
主要是要知道你的系统使用的配置方法,不要随意添加。

我当时最常见的陷阱是:
1 我以为临时命令会永久生效,结果重启后就全部忘记了。
2 、不注意脚本执行顺序导致网络服务关闭。
3 .忘记检查入口的可达性,导致通道孤独。

这一切都会发生,所以做的时候一定要小心,不要像我一样傻。
如果我面对一个新的发行版,比如Fedora、Arch等,我就不敢乱说,因为我怕犯错误。

Linux服务器添加永久静态路由

对于永久静态路由来说,静态路由方式是最稳定的。

CentOS 6 .4 系统,修改/etc/sysconfig/static-routes。
添加行:任何网络 1 9 2 .1 6 8 .2 .0 网络掩码 2 5 5 .2 5 5 .2 5 5 .0 gw 1 9 2 .1 6 8 .2 .2 5 4 重启服务网络即可生效。

Debian 8 .1 系统,更改/etc/network/interfaces。
添加线路:up route add -net 1 9 2 .1 6 8 .2 .0/2 4 gw 1 9 2 .1 6 8 .2 .2 5 4 使用重启即可生效。

不要使用rc.local,重启后NFS挂载会出现问题。
使用sed命令添加路由命令,例如sed -i '2 i route add -net 1 9 2 .1 6 8 .2 .0/2 4 gw 1 ​​9 2 .1 6 8 .2 .2 5 4 ' /etc/sysconfig/static-routes。
使用 echo 添加一行,例如 echo "any net 1 9 2 .1 6 8 .2 .0 netmask 2 5 5 .2 5 5 .2 5 5 .0 gw 1 ​​9 2 .1 6 8 .2 .2 5 4 " >> /etc/sysconfig/static-routes。

Ubuntu 更改 NetworkManager 配置。
修改文件/etc/NetworkManager/system-connections/有线连接 3 . 添加路由选项,并通过 1 9 2 .1 6 8 .2 .2 5 4 将其设置为 1 9 2 .1 6 8 .2 .0/2 4
使用route -n查看是否生效。

自己掂量一下。