
私はIPが10.10.30.35のDMZで14.04.2 LTS Ubuntuボックスを実行しており、次のネットワークミステリーがあります。 DMZ 外部の内部ネットワーク 10.2.0.200 (ssh または https を介して) にある他の Unix ボックスに接続しようとすると、同様のエラーが発生しNo route to host
たりping
、ターゲット ホストにアクセスできなくなったりするエラーが原因で失敗します。ただし、DMZの外側にあるがネットワーク内にある10.2.0.170のUnixシリーズボックスに接続できます(ping、ssh、およびhttps)。私のiptablesには何もありません。
> iptables --list
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
ゲートウェイが正しく設定されているようです。
> route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.10.30.25 0.0.0.0 UG 0 0 0 eth0
10.10.30.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
DMZのコンピュータでtcpdumpを実行し、10.2.0.200ボックスにpingを試みると、次の内容が表示されます。
ARP, Request who-has 10.2.0.200 tell myserver.mydomain.com, length 28
ただし、10.2.0.200 やその他のトラフィックに対する応答はまったくありません。 arpプロトコルが機能していないようですか? arpを確認してみると次のようになります。
> arp -na
? (outsideipaddress) at <incomplete> on eth0
? (10.10.30.25) at 00:1a:8c:f0:50:82 [ether] on eth0 <-- gateway
? (10.10.30.80) at 00:50:56:a7:06:89 [ether] on eth0
? (outsideipaddress) at <incomplete> on eth0
? (10.2.0.200) at <incomplete> on eth0
? (outsideipaddress) at <incomplete> on eth0
10.2.0.200項目が奇妙で消去しようとしたところ、次のような結果が出ました。
> arp -d 10.2.0.200
SIOCDARP(dontpub): Network is unreachable
使用しようとしてもip -s -s neigh flush all
アイテムは削除されません。
だから私はここで何をするのか分からない。 10.2.0.200に接続するのを妨げるarpエントリですか?それとも全く違うものを見逃していますか? arpテーブルを手動で編集してMACアドレスを追加できますか?
助けてくれてありがとう。
答え1
私は一つ作った
ip route flush cache
pingとSSHが利用可能です。まだhttpsはできませんが、ネットワークファイアウォールだと思います。助けてくれてありがとう。
答え2
この? (10.2.0.200) at <incomplete> on eth0
項目は、マシンにアクセスできない場合(マシンの電源が入っていますか?)通常の動作です。
たとえば、ターゲットコンピュータのIPTablesにICMPv4要求をブロックするエントリがある場合、トラフィックは破棄されたがホストに転送されたため、arpテーブルにエントリ全体が表示されます。
推測だけしてみてください。 DMZを作成するためのファイアウォールはありますか?確実にするために、パスを追跡してみてください。