CLIを使用してDebianで私の動的パブリックIPアドレスを見つける方法はありますか? [コピー]

CLIを使用してDebianで私の動的パブリックIPアドレスを見つける方法はありますか? [コピー]

ネットワークの最も簡単で簡単な理解は次のとおりです。

ㅏ。 ISPに接続すると、ISPは接続期間中にダイナミックアドレス(一時電話番号など)のみを提供し、次に接続すると再び別のダイナミックIPアドレスを持つことになります。

b。お客様は、ブラウザを使用して固定IPアドレス(組織の永続番号または/または永続アドレスなど)を使用して他のサイトにアクセスします。

Whatismyipaddress.comなどのWebサービスにアクセスする代わりに、私のIPアドレスを取得する方法があります。

接続は次のとおりです。 -

ISP - モデム/ルーター - システム

編集 - モデム/ルーターはD-Link DSL-2750U ADSLルーター/モデムです。http://www.dlink.co.in/products/?pid=452

私は見たログファイルで私のパブリックIPアドレスをどのように追跡できますか?ただし、外部Webサービスも使用しているため、外部URL / IPアドレスにアクセスする必要がない場合はより良いでしょう。

答え1

Tonyの回答に加えて、サーバーにログインするときにローカルシステムとリモートパブリックIPアドレスを表示するためにスクリプトが使用するOpenDNSを照会します。

echo `hostname` `hostname -i` `dig +short +time=1 myip.opendns.com @resolver1.opendns.com`

Googleも同様のサービスを提供しています。

dig TXT +short o-o.myaddr.l.google.com @ns1.google.com | awk -F'"' '{ print $2}'

自宅または会社のルーター/インフラストラクチャーの背後にプライベートIPアドレスがある場合、または自分のルーターを所有している場合でも、インターネット上のこれらのサービスは、要求が実行されている場所に到達したときにアクセスするために使用されるパブリックIPアドレスを公開します。 。

参考にしてください上記の方法は、問題のLinuxシステムがインターネットに直接アクセスできる場合にのみ機能します。

Linuxサーバーがルーターの場合は、現在のインターフェースを表示するだけでなく、次のこともできます。

hostname -i

通常、パブリックIPアドレスはプライマリ/ファーストインターフェイスです。最初のインターフェイスでない場合は、次のこともできます。

$hostname -I
95.xx.xx.xxx 192.168.202.1 192.168.201.1 

デバイスインターフェイスのすべてのIPアドレスが表示されます。

また読んでください:

LinuxのコマンドラインでパブリックIPアドレスを見つける方法

同様に、Linuxサーバーがルーターである場合は、/etc/dhcp/dhclient-exit-hooks.dこの質問に記載されているようにIPの変更を追跡し、それに応じてアクションを実行するスクリプトを配置するのが興味深いことがあります。

ISPの変更IPアドレスを処理するためのより良い方法は何ですか?

答え2

モデムまたはルーターがこの情報を照会する方法を提供している場合にのみ、これを行うことができます。 IPアドレスはルーターまたはモデムのWAN /インターネットインターフェイスに割り当てられているため、そのアドレスを照会するか、インターネットサービスに接続してアドレスが何であるかを知らせる必要があります。

DNS を使用して応答を取得できます。

dig +short @resolver1.opendns.com myip.opendns.com

ただし、実装するには依然として外部サービスが必要です。

したがって、使用可能なインターフェイスがあるかどうかをルーターに問い合わせるか、外部サービスを使用してください。

もちろん、Linuxシステムがルーターの場合、ipまたはipconfigWANインターフェースを照会するためにのみ使用できます。

答え3

dig 1)(ドメイン名情報プロファイラ)コマンドを使用できます。

dig TXT +short o-o.myaddr.l.google.com @ns1.google.com | awk -F'"' '{ print $2}'

または:dig TXT +short o-o.myaddr.l.google.com @ns1.google.com

2)host次のコマンドを試すことができます。

host myip.opendns.com resolver1.opendns.com

3) コマンドでサードパーティのウェブサイトを使用するcurlか、次の操作を行いますwget

curl ipecho.net/plain ; echo

または

wget -qO- http://ipecho.net/plain ; echo

または

curl ipv4.icanhazip.com

4)合格telnet

telnet myip.gelma.net

答え4

あなたのシステムはこのIPを知らないので、システムの外に何かを尋ねます。あなたのルーターはこれらのサービスを提供できることを知っているので、このサービスを提供するルーターはわかりませんが(しかし詳細には見たことはありません)、その機能を持つルーターが存在する場合はモデル番号を知る必要があります。ルーターの方法を教えてください。

さまざまなサービスを使用すると、パブリックIPが存在することがわかりますが、すべてのサービスがWebベースのものではなく、もちろん、ルーターはWebベースのサービスと非Webベースのサービスの両方を実装できます。

関連情報