Linux で利用可能なネットワーク インターフェイスを表示する方法

Linux で利用可能なネットワーク インターフェイスを表示する方法

序文

Linux システムをインストールした後の最も一般的なタスクは、ネットワーク構成です。もちろん、システムのインストール時にネットワーク インターフェイスを構成することもできます。ただし、システムをインストールした後にネットワークを構成したり、既存の設定を変更したりすることを好む人もいます。

ご存知のとおり、コマンド ラインでネットワーク設定を構成するには、まずシステムで使用可能なネットワーク インターフェイスの数を知る必要があります。この簡単なガイドでは、Linux および Unix オペレーティング システムで利用可能なネットワーク インターフェイスを見つけるためのすべての可能な方法をリストします。

Linuxで利用可能なネットワークインターフェースを見つける

使用可能なネットワーク インターフェイスを見つけるには、次の方法を使用できます。

方法1: ifconfigコマンドを使用する

ifconfig コマンドを使用してネットワーク インターフェイスを表示する方法は、今でも最も一般的に使用されている方法です。この方法をまだ使用している Linux ユーザーは多くいると思います。

$ ifconfig -a

サンプル出力:

enp5s0: フラグ=4098<ブロードキャスト、マルチキャスト> mtu 1500
ether 24:b6:fd:37:8b:29 txqueuelen 1000 (イーサネット)
RXパケット 0 バイト 0 (0.0 B)
RXエラー 0 ドロップ 0 オーバーラン 0 フレーム 0
TXパケット 0 バイト 0 (0.0 B)
TXエラー 0 ドロップ 0 オーバーラン 0 キャリア 0 衝突 0

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 ネットマスク 255.0.0.0
inet6 ::1 プレフィックス長 128 スコープID 0x10<ホスト>
ループ txqueuelen 1000 (ローカル ループバック)
RXパケット 171420 バイト 303980988 (289.8 MiB)
RXエラー 0 ドロップ 0 オーバーラン 0 フレーム 0
TXパケット 171420 バイト 303980988 (289.8 MiB)
TXエラー 0 ドロップ 0 オーバーラン 0 キャリア 0 衝突 0

wlp9s0: フラグ=4163<UP、ブロードキャスト、実行中、マルチキャスト> mtu 1500
inet 192.168.225.37 ネットマスク 255.255.255.0 ブロードキャスト 192.168.225.255
inet6 2409:4072:6183:c604:c218:85ff:fe50:474f プレフィックス長 64 スコープID 0x0<グローバル>
inet6 fe80::c218:85ff:fe50:474f プレフィックス長 64 スコープID 0x20<リンク>
ether c0:18:85:50:47:4f txqueuelen 1000 (イーサネット)
RXパケット 564574 バイト 628671925 (599.5 MiB)
RXエラー 0 ドロップ 0 オーバーラン 0 フレーム 0
TXパケット 299706 バイト 60535732 (57.7 MiB)
TXエラー 0 ドロップ 0 オーバーラン 0 キャリア 0 衝突 0

上記の出力に示されているように、私の Linux マシンには 2 つのネットワーク インターフェイスがあり、それらは enp5s0 (マザーボード上の有線ネットワーク カード) と wlp9s0 (ワイヤレス ネットワーク カード) と呼ばれます。 lo はループバック ネットワーク カードであり、ローカル ネットワーク サービスにアクセスするために使用されます。通常、その IP アドレスは 127.0.0.1 です。

FreeBSD などの多くの UNIX バリアントで同じ ifconfig を使用して、使用可能なネットワーク カードを一覧表示することもできます。

方法2: ipコマンドを使用する

最新の Linux バージョンでは、ifconfig コマンドは非推奨になっています。次のように、ip コマンドを使用してネットワーク インターフェイスを一覧表示できます。

$ ipリンク表示

サンプル出力:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue 状態 UNKNOWN モード DEFAULT グループ デフォルト qlen 1000
リンク/ループバック 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp5s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
リンク/イーサ 24:b6:fd:37:8b:29 brd ff:ff:ff:ff:ff:ff
3: wlp9s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue 状態 UP モード DORMANT グループ デフォルト qlen 1000
リンク/イーサ c0:18:85:50:47:4f brd ff:ff:ff:ff:ff:ff


次のコマンドを使用して表示することもできます。

$ IPアドレス
$ ip -s リンク

気づきましたか?これらのコマンドは、接続されているネットワーク インターフェイスのステータスも表示します。上記の出力をよく見ると、有線 NIC がネットワーク ケーブルに接続されていないことがわかります (上記の出力の DOWN で示されています)。また、ワイヤレス カードが接続されています (上記の出力の UP から確認できます)。詳細については、Linux でネットワーク インターフェイスの接続状態を確認するための以前のガイドを参照してください。

これら 2 つのコマンド (ifconfig と ip) は、Linux システムで使用可能なネットワーク カードを表示するのに十分です。

ただし、Linux でネットワーク インターフェイスを一覧表示する方法は他にもあります。これについては以下で説明します。

方法3: /sys/class/netディレクトリを使用する

Linux カーネルは、ネットワーク インターフェイスに関する詳細情報を /sys/class/net ディレクトリに保存します。このディレクトリの内容をチェックして、使用可能なインターフェイスのリストが前の結果と一致するかどうかを確認できます。

$ ls /sys/class/net

サンプル出力:

enp5s0 低い wlp9s0

方法4: /proc/net/devディレクトリを使用する

Linux オペレーティング システムでは、/proc/net/dev ファイルにネットワーク インターフェイスに関する情報が含まれています。

利用可能なネットワーク カードを表示するには、次のコマンドを使用して上記のファイルの内容を表示します。

$ cat /proc/net/dev

サンプル出力:

インター|受信|送信
フェイス | バイト パケット エラー ドロップ FIFO フレーム 圧縮 マルチキャスト | バイト パケット エラー ドロップ FIFO コール キャリア 圧縮
wlp9s0: 629189631 566078 0 0 0 0 0 0 60822472 300922 0 0 0 0 0 0
enp5s0: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
: 303980988 171420 0 0 0 0 0 0 303980988 171420 0 0 0 0 0 0

方法5: netstatコマンドを使用する

netstat コマンドは、ネットワーク接続、ルーティング テーブル、インターフェイス統計、マスカレード接続、マルチキャスト メンバーシップなど、さまざまな情報を一覧表示できます。

$ ネットスタット -i

サンプル出力:

カーネルインターフェーステーブル
Iface MTU RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR フラグ
65536 171420 0 0 0 171420 0 0 0 LRU
wlp9s0 1500 565625 0 0 0 300543 0 0 0 BMRU

netstat は非推奨であり、 netstat -iの代わりはip -s linkであることに注意してください。また、このメソッドでは、使用可能なすべてのインターフェースではなく、アクティブ化されたインターフェースのみがリストされることに注意してください。

方法6: nmcliコマンドを使用する

nmcli は、NetworkManager を制御し、ネットワークの状態を報告するために使用されるコマンドライン ツールです。ネットワーク接続の作成、表示、編集、削除、有効化、無効化、およびネットワーク ステータスの表示に使用できます。

Linux システムに NetworkManager がインストールされている場合は、次のコマンドを使用して、nmcli を使用して利用可能なネットワーク インターフェイスを一覧表示できます。

$ nmcli デバイスステータス

または

$ nmcli 接続表示

Linuxで利用可能なネットワークインターフェースを見つける方法がわかりました

Linux で利用可能なネットワーク インターフェイスを見つける他の簡単な方法をご存知の場合は、下のコメント セクションで共有してください。コメントを確認して、このガイドを更新します。

要約する

以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。

以下もご興味があるかもしれません:
  • Linux DMAインターフェースの知識ポイントの詳細な説明
  • Linux システムで Centos7 を使って ElasticSearch ミドルウェアと共通インターフェースを構築するデモ
  • LinuxシステムはPythonを使用してネットワークインターフェースを監視し、ネットワークの入出力を取得します。
  • Linux での BSD ソケット開発の基礎入門
  • Linux オペレーティングシステムでの BSD ソケット開発の基礎入門
  • Linux /etc/network/interfaces 設定インターフェース方法

<<:  antd+reactプロジェクトをviteに移行するためのソリューションの詳細な説明

>>:  MySQL の FIND_IN_SET() と IN の違いを簡単に分析します

推薦する

HTML テーブル マークアップ チュートリアル (10): セル パディング属性 CELLPADDING

セルのパディングは、セルの内容と境界線の間の距離です。基本的な構文<TABLE セルパディング...

フロントエンドセキュリティの詳細な説明: JavaScript の http ハイジャック対策と XSS

目次HTTP ハイジャック、DNS ハイジャック、XSS HTTPハイジャックDNSハイジャックXS...

CSSスプライトの応用の詳細な説明

CSS Sprite は、CSS スプライトとも呼ばれ、画像結合技術です。この方法は、複数の小さなア...

Linux 時間サブシステムの時間表現例の詳細な説明

序文Linux カーネルでは、元のコードとの互換性を保つため、または特定の仕様に準拠するため、また現...

フロントエンドJavaScriptは関数のカリー化を完全に理解している

目次1. カレーとは何か2. カレーの用途3. カリー化ユーティリティ関数をカプセル化する方法 1....

MySQL 8.0 の新しいリレーショナル データベース機能の詳細な説明

序文MySQL 8.0 の最新バージョンは 8.0.4 rc であり、正式版は近日中にリリースされる...

マウスの尾行効果を実現する JavaScript

マウス効果では、setTimeout を使用して固定時間にノードを生成し、ノードを削除し、生成された...

Nginx のステータス監視とログ分析の詳細な説明

1. Nginx ステータス監視Nginx には、Nginx の全体的なアクセス ステータスを監視す...

HTML タグのネスト規則の紹介

XHTML タグには、div、ul、li、dl、dt、dd、h1~h6、p、a、addressa、s...

MYSQL における char と varchar の違い

CHAR 型と VARCHAR 型は似ていますが、主に格納場所、末尾のスペース、取得方法が異なります...

ネイティブ CSS で無限テキストカルーセルを実装する一般的な方法

テキストカルーセルは私たちの日常生活で非常に一般的です。スーパーマーケットや実店舗の入り口には、テキ...

MysqlチューニングExplainツールの詳細な説明と実践的な演習(推奨)

MySQL チューニング ツールの詳細な説明と実践的な演習の説明 ツールの紹介の説明 分析例の説明...

Nginx プロキシ axios リクエストと注意事項

序文最近、小さなデモを作成しました。大規模な工場のオンライン データを使用したため、インターフェイス...

Vue3.0 で Vuex 状態管理を開始する方法をすぐに習得します

Vuex は、Vue.js アプリケーション専用に開発された状態管理パターンです。集中型ストレージを...