2つの異なるネットワークアダプタを持つホストで作成されたDHCPサブネット内で正しいIP転送を確立しようとしています。
私の現在の状況はこんな感じです。
最初のノードには2つのネットワークアダプタがあります。最初のノードはWANに接続され、2番目のノードはDHCPを介してサブネットを作成します。以下はDHCP設定です(マスターで識別されたホストはゲートウェイである必要があります)。
subnet 10.142.0.0 netmask 255.255.255.0 { interface enp0s31f6; option routers 10.142.0.1; option subnet-mask 255.255.255.0; option domain-search "net.local"; option broadcast-address 10.142.0.255; option domain-name-servers 8.8.8.8; range 10.142.0.20 10.142.0.100; } host master{ hardware ethernet d4:5d:df:1a:26:40; fixed-address 10.142.0.1; } host node01 { hardware ethernet d4:5d:df:13:69:42; fixed-address 10.142.0.2; } host node02{ hardware ethernet d4:5d:df:13:69:45; fixed-address 10.142.0.3; }
次のiptablesルールを追加しました。ここで提供された回答
ノードはIPを正しく取得し、SSHを介してノードに接続できます。外部ホストへのpingは正しく機能しますが、ホスト名を解決しようとすると、不明な名前またはサービスエラーが発生します。 DNSルックアップにもIPテーブルルールを設定する必要がありますか?
よろしくお願いします!
編集:CURL GOOGLE IPを直接試しましたが、No route to host
ping
curl http://216.58.205.131 curl: (7) Failed connect to 216.58.205.131:80; No route to host
するとすべてが期待どおりに機能します。
ping 216.58.205.131 PING 216.58.205.131 (216.58.205.131) 56(84) bytes of data. 64 bytes from 216.58.205.131: icmp_seq=1 ttl=54 time=23.7 ms 64 bytes from 216.58.205.131: icmp_seq=2 ttl=54 time=20.0 ms 64 bytes from 216.58.205.131: icmp_seq=3 ttl=54 time=19.9 ms
答え1
インターネット検索後に問題が見つかりました。ゲートウェイ(10.142.0.1)のファイアウォールが転送ルールを無視する要求をブロックしています(転送ルールを克服する他のルールがある可能性があります)。
最初にルールを挿入すると成功します。
iptables -I FORWARD -i <LAN_ETH> -o <WAN_ETH> -j ACCEPT