ルーティングテーブルと(net-toolsを含むiproute2)

ルーティングテーブルと(net-toolsを含むiproute2)

次のルーティングテーブルがあります。

# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.42.129  0.0.0.0         UG    0      0        0 enx6a58445c5d43
169.254.0.0     0.0.0.0         255.255.0.0     U     1000   0        0 enx6a58445c5d43
192.168.42.0    0.0.0.0         255.255.255.0   U     0      0        0 enx6a58445c5d43
192.168.57.0    0.0.0.0         255.255.255.0   U     0      0        0 vboxnet1

次のコマンドを使用するとエラーが発生します。

# ip route add 192.168.42.0/24 via  192.168.57.1 dev vboxnet1
RTNETLINK answers: File exists

しかし、net-toolsを使用してもエラーは発生しません。

# route add -net 192.168.42.0/24 gw   192.168.57.1 dev vboxnet1
# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.42.129  0.0.0.0         UG    0      0        0 enx6a58445c5d43
169.254.0.0     0.0.0.0         255.255.0.0     U     1000   0        0 enx6a58445c5d43
192.168.42.0    192.168.57.1    255.255.255.0   UG    0      0        0 vboxnet1 ####add here
192.168.42.0    0.0.0.0         255.255.255.0   U     0      0        0 enx6a58445c5d43
192.168.57.0    0.0.0.0         255.255.255.0   U     0      0        0 vboxnet1

問題は、iproute2を介して追加する方法です。

答え1

ルーティングテーブルにはネットワークアドレス192.168.42.0/24があります。したがって、次のことを行う必要があります。

ip route replace 192.168.42.0/24 via 192.168.57.1 dev vboxnet1 

または

ip route del 192.168.42.0/24 
ip route add 192.168.42.0/24 via 192.168.57.1 dev vboxnet1 

関連情報