试图了解在 CentOS 中创建静态路由的正确方法,请帮助

Ita*_*not 8 linux routing centos6

我一直试图了解在 CentOS 6.x 机器上添加静态路由的正确方法是什么。在一些论坛,他们说创建一个名为文件route-dev_name与相关途径(例如路由的eth0),并把它放在/etc/sysconfig/network-scripts,在一些论坛上,他们说该文件应该被命名static-routes,在这两种情况下,我无法设置静态路由。似乎在某些 CentOS 发行版中,它仅在命名文件route-dev_name时才有效,而在某些 CentOS 发行版中,它仅在命名文件时有效static-routes.. 任何人都可以帮助我吗?这是我的路由文件的内容:

192.168.20.0/24 via 192.168.20.253 dev eth0
Run Code Online (Sandbox Code Playgroud)

提前致谢

vij*_*jah 8

在 /etc/syconfig/network-scripts/route-eth0 中创建一个文件

添加添加以下内容

192.168.20.0/24 via 192.168.20.253 dev eth0
Run Code Online (Sandbox Code Playgroud)

我一直使用这种方法。我发现这是最好的方法。

仅供参考:检查 - https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/s1-networkscripts-static-routes.html


小智 7

使用/etc/sysconfig/network-scripts/route-device文件定义的 RH 风格的设备相关路由导致了很多问题。

所以真正的系统管理员只使用/etc/sysconfig/static-routes不依赖设备的文件:

any net 10.0.0.0 netmask 255.255.255.0 gw 192.168.0.1
Run Code Online (Sandbox Code Playgroud)

问题:

  • 绑定物理设备时,您还需要记住设置路由设备文件
  • 当您在虚拟机中重新组织适配器时。

自然应该总是使用桥接设备,这样就可以避免路由设备文件问题。

还要注意/etc/sysconfig/static-routes文件中的语法,sniplet from /etc/init.d/network

    # Add non interface-specific static-routes.
    if [ -f /etc/sysconfig/static-routes ]; then
       if [ -x /sbin/route ]; then
           grep "^any" /etc/sysconfig/static-routes | while read ignore args ; do
               /sbin/route add -$args
           done
       else
           net_log $"Legacy static-route support not available: /sbin/route not found"
       fi
    fi
Run Code Online (Sandbox Code Playgroud)


小智 5

有一种更简单的方法来添加路线...

该文件--/etc/init.d/network在PC启动时启动,它使用一个文件/etc/sysconfig/static-routes来添加静态路由

您必须创建它,因为它不存在。

如果你仔细阅读该文件/etc/init.d/network,它会读取该文件中的每一行来添加路由,这些行必须以“any”开头,并且“route add -”是已知的。

因此,在您要创建的文件 >> /etc/sysconfig/static-routes 中,您必须编写:

any net 10.0.0.0 netmask 255.255.255.0 gw 192.168.0.1 eth0
Run Code Online (Sandbox Code Playgroud)
  • 其中 10.0.0.0/24 是您想要访问的网络(255.255.255.0 是掩码)
  • 其中 gw 1​​92.168.0.1 是要到达的网关(当然是路由器)
  • 其中 eth0 是使用的接口。

这是添加静态路由的最佳方法,1 个文件用于所有内容(不是用于 X 接口的 X 文件)