DHCP接続を使用してローカルネットワークにコンピュータが接続されており、毎回異なるIPを取得しているとします。同じローカルネットワーク上の他のコンピュータでこのコンピュータ(IPなど)を見つける方法はありますか?
どちらのコンピュータもLinuxを実行します。再起動する前に「失われた」システムを設定して別のIPを取得することができますが、存在する場合はすぐに利用可能な解決策を好むでしょう。
答え1
dhcpデーモンを設定できる場合は、特定のIPアドレスをコンピュータのネットワークカードMACアドレスにバインドすることが透明で良い解決策です。これにより、コンピュータがdhcpを介してアドレスを要求すると、デーモンはまったく同じアドレスを渡します。
一部のDHCPサーバーでは、コンピュータがホスト名を提案できるようにします(これの内部構造とこれが実際に一般的な動作であるかどうかはわかりません)。これがあなたのルーターで動作することを確認したいかもしれません。動作していても、dhcpクライアントにホスト名を送信させる必要があります(--hostname
リソースのオプションdhcpcd
)。これは暗闇の中でのショットですが、試してみる価値があります。機能している場合は、IPアドレスの代わりにコンピュータのホスト名を使用できます(またはそれを使用して番号アドレスを見つけることができます)。
答え2
質問に「Debian」というタグが付けられているので、問題の簡単な解決策は次のとおりです。
コンピュータで次のコマンドをlost
実行しますfinder
(asroot
またはsudo
必要に応じてas /を使用)。
# apt-get install avahi-utils
lost
その後、同じブロードキャストドメイン(つまり同じ物理ネットワーク)にある限り、別のコンピュータで各ホストのIPアドレス(v4またはv6)を確認できる必要がfinder
あります。avahi-resolve
たとえば、すべてのユーザーは次のようにfinder
解析できますlost
。
$ avahi-resolve -4 -n lost.local
lost.local 192.168.56.102
$ avahi-resolve -6 -n lost.local
lost.local fe80::a00:27ff:fea7:4900
同様にlost
:
$ avahi-resolve -4 -n finder.local
finder.local 192.168.56.101
$ avahi-resolve -6 -n finder.local
finder.local fe80::a00:27ff:fe72:804
明らかに私は多くの部分を不具合にし、いくつかの小さな詳細が間違っているため、avahiが正しく機能しない可能性がありますが、いくつかの異なるケースについての私の独自の実験によると、すべてがうまく機能する可能性があります(Tm値)。
答え3
DHCPサーバーをある程度制御できる場合は、コンピュータに常に同じIPアドレスを提供するように準備してください。ほとんどのDHCPサーバーは、特定のMACアドレスを持つコンピュータまたは特定のクライアント名にIPアドレスを予約できます。
それ以外の場合、次善策は以下を使用することです。動的ドメイン名の解決サービス:コンピュータで実行されている小さなプログラムは、コンピュータのIPが変更されるたびにDNSサーバーに更新を送信します。 LANの内部または外部に独自の動的DNSサーバーを設定したり、既存のDNSサーバーにピギーバックしたり、既存の動的DNSサービスの1つを使用したりできます(少なくとも個人用には無料サービスがあります)。
これがオプションでない場合は、スクリプトを使用して制御できるWebページにアクセスし、そこにIPアドレスを残すことができます。非常に粗雑ですが、ほとんどのファイアウォールを通過します。
コンピュータのIPアドレスを知る必要がないもう1つの選択肢は、自分のコンピュータと既知のIPアドレスを持つ別のコンピュータの間にトンネル(VPN)を設定することです。アドレスが変更されたコンピュータでVPNクライアントを実行し、静的IPを持つコンピュータでVPNサーバーを実行します。トンネルが確立されると、どちらの方向でも接続を開くことができます。
答え4
同じネットワークにいる場合は、同じブロードキャストドメインにあります。ネットワークの規模はどのくらいですか? Cクラス以上ですか?
クラスCの場合、253個のIPすべてに対して単にpingを実行し、arpキャッシュが「あなたの」MACアドレスを探していることを確認できます。