複数のRedHat_7 PCで構成されるクラスターがあります。マスターノードは2つのネットワーク(内部およびインターネット)に接続します。私はすべてのコンピュータにインターネットサービスを提供するためにNATを利用していました。
何らかの理由で、このメソッドは現在機能しません。 NAT cmdsを以下に示します。
Sudo iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -o em4 -j MASQUERADE
Sudo sysctl -w net.ipv4.ip_forward=1
通常、デフォルトルートを追加する必要があります。
Sudo route add default gw 'my_gateway' em4
その後、インターネットをサーフィンできます。ただし、これは数分間しか機能しないため、これらのコマンドを定期的に実行する必要があります。
route -nは以下になります:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.10.10 0.0.0.0 UG 100 0 0 em1
0.0.0.0 X.X.X.1 0.0.0.0 UG 101 0 0 em4
192.168.10.0 0.0.0.0 255.255.255.0 U 100 0 0 em1
X.X.X.0 0.0.0.0 255.255.224.0 U 0 0 0 em4
X.X.X.0 0.0.0.0 255.255.224.0 U 100 0 0 em4
そしてip route showは以下になります:
default via 192.168.10.10 dev em1 proto static metric 100
default via X.X.X.1 dev em4 proto static metric 101
192.168.10.0/24 dev em1 proto kernel scope link src 192.168.10.10 metric 100
X.X.X.0/19 dev em4 proto kernel scope link src MY_IP
X.X.X.0/19 dev em4 proto kernel scope link src MY_IP metric 100
route add cmdを実行すると、変更は以下のようになります。
0.0.0.0 X.X.X.1 0.0.0.0 UG 0 0 0 em4
default via X.X.X.1 dev em4
そして数分後、これらの変更はなくなります。質問があります。
助けてくれてありがとう。
[〜#〜]編集[〜#〜]
これら2つのファイルの構成ファイルを以下に示します。
/ etc/sysconfig/network-scripts/ifcfg-em1
TYPE=Ethernet
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
NAME=em1
UUID=MYUUID
ONBOOT=yes
HWADDR=MYMAC
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPADDR=192.168.10.10
PREFIX=24
GATEWAY=192.168.10.10
/ etc/sysconfig/network-scripts/ifcfg-em4
TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=em4
UUID=MYUUID
ONBOOT=yes
HWADDR=MYMAC
PEERDNS=yes
PEERROUTES=yes
内部ネットワークにDHCPを使用している可能性があり、DHCP構成にデフォルトルートが含まれているようです。
あなたの問題は基本的にこれら2つのエントリにあります:
default via 192.168.10.10 dev em1 proto static metric 100
default via X.X.X.1 dev em4 proto static metric 101
Em1のデフォルトルートのコストはem4のデフォルトゲートウェイよりもわずかに低いため、192.168.10.10経由のルートが推奨されます。
インターネットとの接続を提供する1つの(「マスター」)ノードの場合、最善の策は、静的IP(マスターノードはおそらくゲートウェイであるため、静的IPは理にかなっていると思う)を設定し、DHCPを使用しないことです。
DHCPでマスターノードのホスト固有の構成を作成することもできますが、マスターノードを静的にする方が簡単だと思います。
Sudo vi /etc/sysconfig/network
GATEWAY=x.x.x.x
を見つけて変更する
Sudo service network restart
静的とは、一部のルーティングプロトコルではなく、静的に設定されたことを意味します。