環境は以下のようにほとんどFreeBSDです。
HOST_A <-> ROUTER <-> LOKI <-> HOST_B
少なくとも、HOST_BでROUTERをpingできることを願っています。
- ルータに IP 10.0.0.1 が割り当てられました。
- LOKIは、IP 10.0.0.2と192.168.200.1が割り当てられたマルチホームコンピュータです。
- HOST_BにはIP 192.168.200.3が割り当てられています。
- HOST_AにはIP 10.0.0.3が割り当てられています。
上記のようにネットワークを設定し、lokiのrc.confにGateway_enable = "YES"を追加しました。
LOKI の netstat -r は以下を生成します。
Routing tables
Internet:
Destination Gateway Flags Netif Expire
default 10.0.0.1 UGS em0
10.0.0.0 link#1 U em0
10.0.0.2 link#1 UHS lo0
loki link#2 UH lo0
192.168.200.0 link#3 U ue0
192.168.200.1 link#3 UHS lo0
それは良いルーティングテーブルのように見え、すべての方向で動作するようです。
HOST_B の netstat -r は以下を生成します。
Routing tables
Internet:
Destination Gateway Flags Netif Expire
default 192.168.200.1 UGS em0
hostb link#2 UH lo0
192.168.200.0 link#1 U em0
192.168.200.3 link#1 UHS lo0
別のきめ細かいルーティングテーブルのように見えますが、LOKIだけが見えます。
簡単に言うと:
- LOKIはHOST_A、HOST_B、およびROUTERをpingできます。
- HOST_BはLOKIをpingできますが、ROUTERまたはHOST_Aはpingできません。
追加の注意事項:HOST_Bから
ping 10.0.0.1 100% packet loss
LOKIのWiresharkでHOST_Bで10.0.0.1をpingするとき:
120 40.549564000 192.168.200.3 10.0.0.1 ICMP 98 Echo (ping) request id=0x5a0e, seq=92/23552, ttl=63 (no response found!)
私が見るには、LOKIからROUTERに何もルーティングされていないようです。私は何を見逃していますか?
/etc/rc.conf で Gateway_enable="YES" をコメントアウトして再起動し、IP 転送が進行中であることを確認しました。
次に、lokiで次のコマンドを実行します。
sudo tcpdump -i em0 -nS
sudo tcpdump -i ue0 -nS
両方のネットワークカードのアクティビティを監視します。
Hostbで以下を実行しました。
ping 10.0.0.1
192.168.200.1 の ue0 インターフェイスは、次のことを報告します。
14:44:21.870865 IP 192.168.200.3 > 10.0.0.1: ICMP echo request, id 21509, seq 0, length 64
10.0.0.2のem0インターフェイスには何も報告されません。
それから私は以下を実行しました。
sudo sysctl -w net.inet.ip.forwarding=1
もちろん、em0は次のように報告しました。
14:58:14.745369 IP 192.168.200.3 > 10.0.0.1: ICMP echo request, id 25861, seq 0, length 64
でもいいえ、ホストbのping lokiで得たのと同じ結果で返信してください。
14:44:15.724200 IP 192.168.200.3 > 192.168.200.1: ICMP echo request, id 21253, seq 4, length 64
14:44:15.724207 IP 192.168.200.1 > 192.168.200.3: ICMP echo reply, id 21253, seq 4, length 64
lokiでルータにpingを実行すると、すべてが正常です。
15:04:55.637839 IP 10.0.0.2 > 10.0.0.1: ICMP echo request, id 46852, seq 3, length 64
15:04:55.638324 IP 10.0.0.1 > 10.0.0.2: ICMP echo reply, id 46852, seq 3, length 64
返信を見つける方法についてのアイデアはありますか?
ベストアンサー1
LOKIとHOST_Aが同じサブネットにある場合、なぜルーターを介して接続するのですか?それは本当にルーターですか、それとも単純なスイッチですか? (後でコメントすると、デバイスはルータですが、単にLOKIとHOST_Aの間のスイッチとして機能します。)
HOST_AとROUTERのルーティングテーブルは何ですか? 192.168.200.1にアクセスしようとしていますが、なぜLOKIを目的地として使用するのですか?
これらのデバイスのルーティングテーブルが 192 サブネットに LOKI を使用していることを知らない限り、デフォルトゲートウェイにのみ転送されます。
あるいは、LOKIにNATをインストールすることを検討してください。多くのサービスでは、HOST_BのトラフィックをLOKIのトラフィックにカプセル化できます。他のシステムがその場所に到達する可能性があるため、トラフィックを受信してHOST_Bに戻すことができます。