ifconfig
を使用してUbuntu10.04 LTSからローカルに割り当てられたIPアドレスを取得しようとしていますが、取得しているのは外部IPアドレスです(つまり、 whatismyip)で表示されるのと同じIPです。 com )
実行時ifconfig eth0
、inet addr
は、ローカルアドレスの代わりに外部IPアドレスを表示します。
ローカルIPアドレスを取得するにはどうすればよいですか?
ifconfig eth0
が外部でルーティング可能なIPアドレスを返す場合、ほぼ確実にNATの背後にいるわけではありません。 ifconfig
は、NATされていないIPアドレスが何であるかを知る方法がなく、インターフェースに実際に関連付けられているIPアドレスのみを報告できます。
表示されているIPアドレスが間違っていると思うのはなぜですか?
ip addr
はあなたのマシンが持っているすべてのアドレスを表示します。これには、ipv4、ipv6、mac、リンクローカルおよびグローバル、avahi…が含まれます。
Rfc1918プライベートアドレスが表示されない場合は、NATの背後にいないことを意味します。ルーターはモデムのように機能しており、独自のIPアドレスを持っていません。
そのためにルーターを使用する必要があります。そのため、ルーターにはパブリックIPがあり、ボックスにはDHCPによって配信されるローカルIPがあります。
好奇心から:外部IPで大丈夫ではないのはなぜですか?セキュリティ上の問題?
ip route
を試してください。この正規表現との最初または2番目の一致は、ローカルIPです。
(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)
これが外部IPも返す場合は、ルーターがないと思います。