これはLinuxに関するものですが、誰かが一般的な* nixの方法を知っているなら、それは良いでしょう。
昨日、イーサネットケーブルを接続した状態でシステムを起動しました。「NetworkManager」がインストールされていないため、起動したら、イーサネットクライアントの名前をifconfig
で探し、DHCPクライアントを手動で起動しましたが、 lo
以外は表示されませんでした。
NICはlspci
を介してリストされ、適切なカーネルドライバーがロードされました。システムは通常wifiを使用しており、そのインターフェース名はwlan0
でした。ifconfig wlan0 up
を試したところ、wlan0
が表示されましたが、覚えている唯一のイーサネットインターフェース名はeth[N]
とem[N]
でしたが、どちらも機能しませんでした。
このドキュメント は「予測可能なインターフェース名」を指しますが、それらが何であるかを簡単な言葉で説明するのはうまくいきません。これは、この場合の名前がPCIバスおよびスロット番号から推定される可能性があることを意味するソースコードの一部を参照しています。これは、不必要に複雑な手間のようです。
他の検索では、これはsystemd
とudev
を組み合わせて決定される可能性があると思いましたが、/usr/lib/udev/rules.d
にはほぼ100個のファイルがあり、1時間かけてどこで( if)systemd設定ファイルがあるため、これもばかげているようです。
また、ifのように名前が付けられている可能性があるだけでなく、それらが使用可能であることを確認しておくと、ハードウェアの問題などを除外できますLinuxで使用可能なネットワークインターフェイスの名前を見つける簡単な方法はありませんか?
すべてのインターフェースをリストするために私が知っている最も簡単な方法は
ifconfig -a
[〜#〜]編集[〜#〜]
廃止されたシステムを使用している場合は、
ip link show
カーネルは/sys
にそれらを名前でリストします。どちらも(たとえば)PCIデバイスのツリーで個別に表示されます。 /sys/class/net
のシンボリックリンク。例えば。:
> ls /sys/class/net
em1 lo wlp6so
もう一つの例:
> ls /sys/class/net
lo p6s1 wlan0
どちらがどれかわからない場合は、次のいずれかを使用してすべてを配置できます。
ifconfig [name] up
または:
ip link set [name] up
次に、ifconfig
(引数なし)によってリストされた(かなり明確な)手がかりを見てください。 Freedesktop.orgドキュメントからリンクされたsystemdソースコードは、次のものも参照します。
Two character prefixes based on the type of interface:
* en -- ethernet
* sl -- serial line IP (slip)
* wl -- wlan
* ww -- wwan
上記のいずれかの場合(p6s1
)にもプレフィックスはありません。
いつもしています cat /proc/net/dev
シンプルで覚えやすい
ifconfig
= Solarisipconfig
= Windowsip
= Linux
私は知っていますが、追加や修正を受け入れることは確かです。