RTNETLINK 回答:添加路由时参数无效

RTNETLINK 回答:添加路由时参数无效

我希望为我的接口 eth1 添加静态路由。但每当我使用路由命令时,我都会收到这个烦人的错误 RTNETLINK 答案:无效参数。

当前路由配置

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

10.73.55.172    0.0.0.0         255.255.255.252 U     0      0        0 eth2
10.64.23.0      0.0.0.0         255.255.255.0   U     0      0        0 eth0
169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 eth0
169.254.0.0     0.0.0.0         255.255.0.0     U     1004   0        0 eth2
169.254.0.0     0.0.0.0         255.255.0.0     U     1005   0        0 eth3
0.0.0.0         10.73.55.173    0.0.0.0         UG    0      0        0 eth2

对于 eth0 ,我希望默认网关为 10.64.23.1 ,对于 eth2 ,我希望网关为 10.73.55.173 。配置如下:

ifconfig eth0

eth0      Link encap:Ethernet  HWaddr 28:80:23:AF:E0:4C
          inet addr:10.64.23.36  Bcast:10.64.23.255  Mask:255.255.255.0
          inet6 addr: fe80::2a80:23ff:feaf:e04c/64 Scope:Link

ifconfig eth2
eth2      Link encap:Ethernet  HWaddr 28:80:23:AF:E0:4E
          inet addr:10.73.55.174  Bcast:10.73.55.175  Mask:255.255.255.252
          inet6 addr: fe80::2a80:23ff:feaf:e04e/64 Scope:Link

我使用的是 CentOS 6.4 版本

cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static
#HWADDR="28:80:23:AF:E0:4C" IPADDR=10.64.23.36
#IPV6INIT="yes" NETMASK=255.255.255.0
#NM_CONTROLLED="no" ONBOOT=yes GATEWAY=10.64.23.1 TYPE="Ethernet" UUID="bdb726be-c3ce-404d-ba56-7a46906745af"

MAL_SIG_1_8_1:/home/mclaw# cat /etc/sysconfig/network-scripts/ifcfg-eth2
DEVICE="eth2"
BOOTPROTO="static" IPADDR=10.73.55.174
#DHCP_HOSTNAME="mc-inst"
#HWADDR="28:80:23:AF:E0:4E"
#NM_CONTROLLED="yes" NETMASK=255.255.255.252 GATEWAY=10.73.55.173 ONBOOT="yes"
#DEFROUTE=no TYPE="Ethernet" UUID="5be9a274-6146-4ad0-9135-7fcc612ec2b7"

MAL_SIG_1_8_1:/home/mclaw# cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=MAL_SIG_1_8_1
#GATEWAY=10.64.23.1

无论我给出什么 ip route 命令,它都会出现以下错误。

ip route add 10.73.55.174/30 via 10.73.55.173 dev eth2

RTNETLINK 回答:无效参数

答案1

使用 IP 路由添加路由时,需要始终使用网络地址。

10.73.55.174/30不是有效的网络地址。网络地址始终是子网中的第一个 IP 地址。就您而言,网络地址是10.73.55.172/30

您的路由表中已经有该子网的条目。

答案2

请记住,此路由不是持久的,因此每次重启后,您都会丢失 eth2 的网关

我将像这样设置 eth2 的网关

sudo vi /etc/sysconfig/network-scripts/ifcfg-eth2

例如

DEVICE="eth2"
BOOTPROTO="static"
IPADDR=10.73.55.174
NETMASK=255.255.255.252
GATEWAY=10.73.55.173
ONBOOT="yes"
TYPE="Ethernet"

相关内容