IP 10.10.0.2のプライベートアドレス空間にCentOS 7システムがあります。認定IPを使用するゲートウェイを介してインターネットに接続したいと思います。同じスイッチに接続、私達はそれを50.50.50.50と呼びます。一点で働いていましたが、今は破損して修正できないようです。また、フォーマットを理解しやすくするために、net-toolsもインストールしました。
[root@node002 ~]# ip route show
10.0.0.0/8 dev ens785 proto kernel scope link src 10.10.0.2 metric 100
[root@node002 ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.0.0.0 0.0.0.0 255.0.0.0 U 100 0 0 ens785
では、他のすべてのゲートウェイとして50.50.50.50のパスを追加するにはどうすればよいですか?
私はいくつか試しましたが、[root@node002 ~]# ip route add 0.0.0.0/0 dev ens785
ルートテーブルに何も追加されません。エラーメッセージもありません。また、以下のようにホストにパスを追加しようとしましたがip route add 50.50.50.50 dev ens785
、これによりルーティングテーブルに追加の行が追加されました。
[root@node002 ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.0.0.0 0.0.0.0 255.0.0.0 U 100 0 0 ens785
50.50.50.50 0.0.0.0 255.255.255.255 UH 0 0 0 ens785
また、このような他のバリエーションも試しましたが、[root@node002 ~]# ip route add 0.0.0.0/0 via 50.50.50.50
実行直後に表示される内容なので、ホストへのパスが削除されました。
[root@node002 ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.0.0.0 0.0.0.0 255.0.0.0 U 100 0 0 ens785
私も次のことを試しました。
[root@node002 ~]# ip route add default via 50.50.50.50/0
Error: ??? address is expected rather than "50.50.50.50/0".
そしてさらに:
[root@node002 ~]# ip route add default dev ens785
[root@node002 ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.0.0.0 0.0.0.0 255.0.0.0 U 100 0 0 ens785
50.50.50.50 0.0.0.0 255.255.255.255 UH 0 0 0 ens785
他のすべてのコンピュータには、ターゲットとゲートウェイが0.0.0.0のデフォルトパスがあります。たとえば、私のデスクトップと同様に、これは意味があります。同じネットワーク上のトラフィックはゲートウェイなしでローカルネットワークに移動し、他の場所へのトラフィックはルーターを通過します。
root@desktop ~ $ route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 100.100.100.1 0.0.0.0 UG 100 0 0 eth0
100.100.100.0 0.0.0.0 255.255.255.0 U 100 0 0 eth0
この問題をどのように壊したのか、それを修正する方法がわかりません。どんなアドバイスもありがとうございました!
編集する
まず、同じインターフェイスでゲートウェイシステムにプライベートアドレスを提供しました。今は10.1.1.1で、私は考えるサブネットマスクが 255.0.0.0 であることを示します。これは同じネットワークであることを意味します。このアドレスはpingできます。ただし、デフォルトとして追加することはできません。
[root@node002 ~]# ip route add default via 10.1.1.1
[root@node002 ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.0.0.0 0.0.0.0 255.0.0.0 U 100 0 0 ens785
50.50.50.50 0.0.0.0 255.255.255.255 UH 0 0 0 ens785
一時的にノードにパブリックIPを追加してから、デフォルトゲートウェイを追加できます。
[root@node002 ~]# ip a add 50.50.50.51 dev ens785
[root@node002 ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.0.0.0 0.0.0.0 255.0.0.0 U 100 0 0 ens785
50.50.50.50 0.0.0.0 255.255.255.255 UH 0 0 0 ens785
[root@node002 ~]# ip route add default via 10.1.1.1
[root@node002 ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.1.1.1 0.0.0.0 UG 100 0 0 ens785
10.0.0.0 0.0.0.0 255.0.0.0 U 100 0 0 ens785
50.50.50.50 0.0.0.0 255.255.255.255 UH 0 0 0 ens785
50.50.50.51 0.0.0.0 255.255.255.255 UH 100 0 0 ens785
その後、パブリックIPアドレスを削除できますが、それでもデフォルトのルートを維持できます。
[root@node002 ~]# ip a del 50.50.50.51/32 dev ens785
[root@node002 ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.1.1.1 0.0.0.0 UG 100 0 0 ens785
10.0.0.0 0.0.0.0 255.0.0.0 U 100 0 0 ens785
50.50.50.50 0.0.0.0 255.255.255.255 UH 0 0 0 ens785
もしそうなら、認定IPを削除し、ゲートウェイはそのままにすることができれば、なぜゲートウェイを追加するために認定IPを追加する必要がありますか?
編集2 単にパブリックIPを追加しない限り、ipコマンドを使用してデフォルトルートを追加することはできません。
状況をさらに混乱させるために、NetworkManagerをバイパスし、ifcfgファイルを使用して(DHCPの代わりに静的割り当てに置き換える)目標を達成することができました。
[root@node002 ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens785
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
NM_CONTROLLED=no
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
NAME=ens785
DEVICE=ens785
ONBOOT=yes
MTU=9000
HWADDR=00:11:22:33:44:55
IPADDR=10.10.0.2
NETMASK=255.0.0.0
GATEWAY=10.1.1.1
DNS1=10.1.1.1
[root@node002 ~]# systemctl stop NetworkManager
[root@node002 ~]# ifdown ens785 && ifup ens785
[root@node002 ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use
Iface
0.0.0.0 10.1.1.1 0.0.0.0 UG 0 0 0 ens785
10.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 ens785
169.254.0.0 0.0.0.0 255.255.0.0 U 1004 0 0 ens785
ベストアンサー1
まず、IPとしてデフォルトゲートウェイを追加することはできず、インターフェイスにゲートウェイと同じ範囲のIPがありません。たとえば、デフォルトゲートウェイを追加するには、50.50.50.50/24
同じ範囲のIPが必要です50.50.50.100/24
。
インターフェイスが1つだけでプライベートIPアドレスがあり、インターネットにアクセスする必要がある場合は、ローカルIPからパブリックIPにNATを実行できるようにルーターが必要です。
スイッチのみがあるため、この問題を解決するには、プライベートIPとパブリックIP範囲のIPを使用して同じインターフェイスに子(エイリアス)インターフェイスを追加してから、デフォルト50.50.50.100/24
ゲートウェイを追加するトリックを実行できます。ip route add default via 50.50.50.50