「インターネット共有」へのアクティブな接続を表示


27

インターネット共有を介してAppleラップトップに接続されているデバイスのリストを表示するにはどうすればよいですか(有効になっている場合)。リストが存在しない場合、インターネット共有はDHCPリクエストをログに記録しますか?ありがとう。


2
良い質問!!
-daviesgeek

回答:


26

arpコマンドラインで試すことができます:

arp-アドレス解決の表示と制御

説明

ARPのユーティリティが表示され、修正アドレス解決プロトコル(ARP(4))で使用されるインターネットからイーサネットへのアドレス変換テーブル。フラグがない場合、プログラムはホスト名の現在のARPエントリを表示します。ホストは、インターネットドット表記を使用して、名前または番号で指定できます。

たとえば、イーサネットから空港へのインターネット共有の場合:

arp -i en1 -a

これにより、WLAN経由で接続されているすべてのクライアントがリストされます。


12
ヒント:使用されているインターフェイスが不明な場合は、いつでも入力ifconfigしてすべてのインターフェイスを一覧表示できます。私のMBPはwifi経由でインターネットに接続されており、イーサネットケーブルを介してラズベリーパイとインターネットを共有しています。-i bridge0デバイスのIPアドレスを確認するために使用する必要がありました。
1

arpコマンドは、急速に変化する可能性のある状態のスナップショットを提供します。最も顕著なのは、デバイスがワイヤレスアクセス領域の境界にあるために断続的に接続するWi-Fiネットワークを探している場合です。
ダン

3
ここから始めるのに便利な場所はむき出しかもしれませんarp -a。おそらく、翻訳されたインターフェイスはそれほど多くないでしょう。
ダヴクラーク2014

@ssingsingこれはまさに私がやっていることです-ありがとう!
awidgery

1
私の場合は-i bridge100
ラプター

11

InternetSharing DHCPリースを取得するアドレスを記録します:

/var/log/system.log

技術的にはbootpd、ネットワークアクセスのこの部分を処理するのはデーモンです。

次のコマンドを使用して、誰がネットワークにアクセスしているのかを追跡できます。

tail -f /var/log/system.log | grep 'bootpd.*\[en.\]'

マーベリックス、ヨセミテ、エルキャピタンの場合:

tail -f /var/log/system.log | grep 'bootpd.*\[bridge.\]'

次のコマンドを使用して、誰がいつネットワークに接続したかを表示できます。

grep 'bootpd.*\[en.\]' /var/log/system.log

マーベリックス、ヨセミテ、エルキャピタンの場合:

grep 'bootpd.*\[bridge.\]' /var/log/system.log

過去にさらに追跡する必要がある場合、コマンドは次のとおりです。

bzgrep 'bootpd.*\[en.\]' `ls -tr /var/log/system.log.*.bz2`

マーベリックス、ヨセミテ、エルキャピタンの場合:

bzgrep 'bootpd.*\[bridge.\]' `ls -tr /var/log/system.log.*.bz2`

最後に、これらのログファイルで既知のデバイスを招待されていないデバイスとすぐに区別したい場合、方法は構成ファイルを埋める bootpdことです:

/etc/bootptab

すべての既知のMACアドレス。


2
(少なくとも)Mavericksの時点で、bootpdは物理ネットワークデバイスではなくブリッジへの接続を記録するため、接続試行を見つけるために 'boodpf。* [bridge。*]'をgrepする必要があります。arpは、「-i en1」や「-i bridge100」などへの接続を引き続きリストします。
オルファン14年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.