IPアドレスを表示する最も簡単な方法は?


62

起動後、デバイスが現在使用しているIPアドレスを取得して表示する最も簡単な方法は何ですか?
Raspbianを使用ifconfigしていますが、インストールされていないようです。

LXDEにこの情報を表示するウィジェットはありますか?


4
おそらくインストールされています。Debianでifconfigをsudoする必要があります。
アレックスチェンバレン

私は今それを実現しています。Ubuntuのコマンドラインのヒントに甘やかされたと思う。電源を入れたときにチェックアウトします。
Zoot

それはUbuntuのことではなく、bashのことです。ifconfigは異なる権限でインストールされたばかりだと思います。
アレックスチェンバレン

1
はい、私はsudoを忘れました。ifconfigはデフォルトでインストールされますが、sudoを実行しないとコマンドが見つかりませんというエラーが表示されます。ありがとう!
Zoot

Raspbianは、ログインプロンプトの直前にIPアドレスを表示します。
トールビョーンラヴンアンデルセン

回答:


65

ifconfigを含むifファミリーのツールは廃止され、新しいipコマンドに置き換えられているため、コマンドラインから次のいずれかを使用してIPアドレスを確認できます。

sudo ip addr show

または

sudo hostname --ip-address

または、まだifconfigを使用したいが、まだインストールされていない場合

sudo apt-get install wireless-tools
sudo ifconfig -a

1
@jackweirdyは、古いifツールを置き換える新しいツールです。追加の詳細については、man ipを試してください。
スティーブロビラード

1
そのために乾杯、今日何か新しいことを学んだ:)
jackweirdy

あなたはIPアドレスの行に何かを表示する「arp」コマンドですか?
ピョートルクラ

4
ip aIPアドレスを取得したい場合は十分です:)
Der Hochstapler

3
実際には、表示コマンドにはsudo権限は必要ありません。/ sbinを含めるようにパスを設定する副作用のために、おそらく表示されます。あなたは実行することができ/sbin/ifconfigたり/sbin/ip、通常の任意のユーザーとして。
XTL

12

この小さなpythonスクリプトも使用できます。

import socket

def get_local_ip_address(target):
  ipaddr = ''
  try:
    s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    s.connect((target, 8000))
    ipaddr = s.getsockname()[0]
    s.close()
  except:
    pass

  return ipaddr
print "Raspberry Pi - Local IP Address"
print(get_local_ip_address('10.0.1.1'))
print(get_local_ip_address('google.com'))

9
ちょっとやり過ぎだと思いませんか?同じことを達成する既存のLinuxコマンドを置き換えることはあまり意味がありません。
Jivings

2
@Jivings Bit厳しい-それは答えです、それはうまくいきます!(私はテストせずに言います...)それは例えばデスクトップ上のウィジェットの基礎かもしれません。
アレックスチェンバレン

1
@Bryan Stack ExchangeとRaspberry Piへようこそ!
アレックスチェンバレン

1
@AlexChamberlainすみません、ブライアン。今朝はまだコーヒーを飲んでいませんでした:)
Jivings

1
これは、ログイン後に実行されるメッセージサービスに追加して、startxメッセージとともにIPアドレスを自動的に表示することもできます。そうすれば、タイピングは不要で自動的になります。
スティーブロビラード

8

DHCPで割り当てられたIPアドレスを見つける代わりに、ルーター/ DHCPサーバーに予約済みのIPアドレスを追加しました。OSの新規インストール後でも、RaspiのMACアドレスと一致し、常に同じIPアドレスを割り当てます。

現在、WheezyはデフォルトでSSHを有効にしているため、キーボードやモニターを接続することなく、新しくインストールしたRaspberry Piにログインできます。

質問に直接答えていないことをおologiesびしますが、示唆するほど密接に関連しているように思われます。


それが人々がIPを決定する簡単な方法を見つけるのを助けるなら、私はそれだけです。
ズート・

7

DHCPサーバーのDHCPステータス/ログを確認できる場合があります。特にホームネットワーク上にある場合。私が所有しているすべてのルーターで、これを見つけるのはかなり簡単です。

これは、ヘッドレスで実行していて、sshするアドレスを知りたいだけの場合に役立ちます。


@gnibbler +1は、ヘッドレスで実行している人の問題に対処しています。Piがどのデバイスであるかを特定することは、ネットワーク上で常に自分自身を識別するとは限らないため、注意が必要です。したがって、接続デバイスリストに名前なしで表示される場合があります。このスレッドraspberrypi.org/phpBB3/viewtopic.php?f=36&t=6998に は、問題と解決策の詳細が記載されています
スティーブロビラード

@SteveRobillard、私それ自体を識別しますが、次のようb8:27:eb:xx:xx:xxに始まるMACアドレスを見ると誰かを助けるかもしれません、それはおそらく
RPiです

5

私のために働いたもの:

sudo ifconfig

以降ifconfigにありましたsbin/ifconfig


回答に感謝しますが、Alex ChamberlainのコメントとSteve Robillardの回答にはすでにこの情報が含まれています。
Zoot

5

外部IPアドレスを確認するには、コマンドラインでこれを使用します

curl http://ipecho.net/plain ; エコー;

あなたはそれを簡単にする関数を作成することができます。

.bashrcを編集し、ファイルの最後に次の関数を追加します。

外部IPアドレスを表示する機能

外部IPアドレスを表示する機能

CLIから関数を呼び出す

ここに画像の説明を入力してください

このリンクでIPアドレスを取得するより興味深い方法を見つけることができます。

http://www.if-not-true-then-false.com/2010/linux-get-ip-address/


5
$ host raspberrypi
raspberrypi has address 192.168.1.20

$ host raspberrypi | grep ‘address’ | cut -d’ ‘ -f4
192.168.1.20

$ nslookup 192.168.1.20
Server:  192.168.1.1
Address:    192.168.1.1#53
20.1.168.192.in-addr.arpa   name = raspberrypi.

$ nslookup 192.168.1.20 | grep ‘=’ | cut -d’ ‘ -f3
raspberrypi

2

Shea SilvermanとJacob Batesは最近、PIPと呼ばれるツールを作成しました。このツールを使用すると、ラズベリーpiのIPを画面に添付することなく取得できます。メインPC。あらゆる状況で最良の選択肢とは限りませんが、非常に巧妙なハックです。


2

IPアドレスを返すBabyスクリプトは、プロンプトから機能します:

IPアドレスリスト| grep inet | grep -v 127.0.0 | cut -d "" -f 6 | カット-d "/" -f 1


1

IPアドレスを見つける代わりにBonjourを使用することをお勧めします。DHCP経由で割り当てられ、PCが同じネットワーク上にある限り、名前でアクセスできます。

たとえば.. raspberrypi.local

これがセットアップされると、完全にヘッドレスで実行でき、SSHまたはVNCなどでPiに接続できます。

Bonjourのセットアップ方法を説明する記事があります。 http://www.raspberrypi.org/forums/viewtopic.php?f=66&t=18207

Windowsマシンの場合、Apply Bonjourプリンターサービスドライバーをインストールする必要があることに注意してください。

MacおよびUbuntuの場合、Bonjourはすでに存在します。


0

ここに補足を追加するために、ifconfigがない可能性がある理由は、システムがおそらくiproute2スイートを代わりに使用しているためです。iproute2には、古いifconfigとルートスイートの更新版が含まれています。

ifconfigまたはrouteで慣れているコマンドを試してみると、最初の本能は、新しい同等のものを使用するのではなく、古いパッケージをインストールすることになる可能性があるためです。たとえば、netstatを使用する必要があり、欠落していることに気付いた場合は、「iproute2 netstat同等物」を検索するだけで、「ss」コマンドを見つけることができます。さらに詳しい情報やドキュメントについては、Linux Foundationの記事を参照してくださいhttp : //www.linuxfoundation.org/collaborate/workgroups/networking/iproute2


1
あなたの答えに感謝しますが、ifconfigをインストールしました。コマンドの前にsudoを忘れました。回答の下のコメントをご覧ください。
Zoot

1
ドッ!私はArchのみを使用しており、しばらくの間ifconfigを使用していません。
コーディ

問題ない。ループも投げられました。
Zoot

笑、ifconfigでsudoを使用する必要はありません。現在$ PATHにないため、パス全体を呼び出すだけです。whereis ifconfigは、必要に応じてパスを提供します。その後、そこから実行できます。sudoは答えではありません!
djsmiley2k-CoW

0

私はさまざまな答えを見ました。知っていたものと知らなかったもの。まだリストされていない、私がいつも使っているものもあります。それがあり、私がそれを逃した場合、申し訳ありません。

sudoホスト名-I


0

ifconfigとsedを含む1つのライナー:

sudo ifconfig wlan0 | sed -En -e 's/.*inet ([0-9.]+).*/\1/p'

wlan0を目的のインターフェイスに置き換えます。


-1
curl ipinfo.io 

UbuntuとRaspbianの両方で動作します


気づかないかもしれない人のために明確にするために:この特定の答えは、Raspberry Piが存在するLANルーターまたはファイアウォールの外部(インターネットに面した)IPアドレスを提供します。Pi自体の特定のLAN IPアドレスは提供しません。これは、インターネットのトラブルシューティングに役立つ場合があります。質問としてローカルLAN IPアドレスを取得するには、この質問の他の回答をご覧ください。
MrChips

-2

私は信じてarp -aあなたのパイがネットワークに接続されると、最も簡単になり、WindowsまたはLinuxのいずれかで。


2
これは、自分のシステムではなく、他のシステムのアドレスを提供するようです。また、man arp現在「このプログラムは廃止されています」で
goldilocks

-3

LXDEについては知りません。デバイスのIPアドレスを知るには、サイトIp-Details.comにアクセスしてください。ここでは、IPロケーション、ISPアドレス、国なども提供します。


3
これにより、内部IPではなく外部IPのみが提供されます。
Zoot
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.