web-dev-qa-db-ja.com

代替ゲートウェイ経由でpingするにはどうすればよいですか?

私たちのネットワークには2つのモデムがあり、それぞれがルーターの後ろに隠れています。プライマリルータは10.1.1.1上にあり、バックアップルータは10.1.1.2上にあり、両方とも10.1.1.0/24サブネットに設定されています。両方のルーターのゲートウェイは192.168.0.1に構成されています。ただし、ゲートウェイが10.1.1.1である場合に表示される192.168.0.1は、ゲートウェイが10.1.1.2である場合に表示される192.168.0.1とは異なるマシンです。

私のNagiosサーバーはそれに応じて設定されています:

auto eth0
iface eth0 inet static
address 10.1.1.10
netmask 255.255.255.0
gateway 10.1.1.1

つまり、ここには4つのゲートウェイがあります。ルーター1(10.1.1.1)ルーター2(10.1.1.2)モデム1(192.168.0.1)モデム2(192.168.0.1)

2つのモデムのステータスを確認するために手動で実行できることを以下に示します。

ping -c4 192.168.0.1 # Is Modem1 up? 
ip route add via 10.1.1.2
ip route change default via 10.1.1.2
ping -c4 192.168.0.1 # Is Modem2 up?
wget 192.168.0.1 # yields expected control webpage for Modem2
ip route change default via 10.1.1.1
ip route del default via 10.1.1.2
wget 192.168.0.1 # Connection refused; Modem1 has no web interface
ssh [email protected] # I can log in to Modem1 and check status

少なくともModem2にpingできるようにしたい。

* CIDR表記の私の忌まわしい誤用を修正し、明確な詳細を提供するために編集されました。

19
Luke Schlather

man ping

ping [ホップ...]宛先

したがって、pingをパラメーターとして、空白で区切られたIPの数を指定できます。最後のアドレスは「ping」されます。前のパラメーターは、pingがたどる経路を定義します。

だからあなたの場合:

  • 最初のゲートウェイを明示的に使用する「ping 10.1.1.2モデム」、
  • 2番目のゲートウェイを明示的に使用するための「ping 10.1.1.1モデム」。

Windowsで同じ問題が発生した場合:ping /?-kは、おそらく必要なオプションです。

ところで:上記のpingはroot権限を必要としません。ルーティング情報(あなたの場合: "whishlist")はICMPプロトコルの一部です。

12
Nils

ping -Narpingもうまくいかず、ようやく this answer からの解決策で解決しました:

nmapパッケージのツールnpingを使用できます。

# nping --icmp --dest-mac [gateway mac] [target ip]

ローカルARPキャッシュでルーターのMACを見つけることができます。

$ arp -v [gateway ip]

このツールは、--tcp--udpなどのさまざまなpingタイプもサポートしています。

11
Tho85

デフォルトゲートウェイは1つしか持てません。複数のゲートウェイを設定できますが、ネットワークごとに1つだけです。

問題は、言及された両方のIPが同じネットワーク内にあることです。また、CIDRを誤って指定しました。10.1.1.0/ 24は、255.255.255.0のサブネットを持つことを意味しました。またはさらに大きなサブネットがあります。 15.0.0.0/8は255.0.0.0です。

したがって、ネットワーク内の任意のホスト(10.0.0.0/8)または(または)ゲートウェイ経由で到達可能な任意のホストに対してpingを実行できます。ただし、同じネットワークに2つのゲートウェイを持つことはできません。

2
mailq

arping を使用:

# arping -c 1 -S [source_ip] -T [target_remote_ip] [gateway_mac_address]

どこ:

  • source_ipは、ホストにローカルに割り当てられているIPです
  • target_remote_ipは、pingするIPアドレスです。
  • gateway_mac_addressは、使用するalternateゲートウェイのレイヤー2イーサネットアドレスです。

あるいは、何らかの形式のSolarisを使用している場合は、以下を使用できます。

ping -N [gateway_ip] [target_remote_ip]
2
bahamat