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 の違いを簡単に分析します

推薦する

速度、読み込み、Web アプリケーションなどにおける div と table の違い。

1: 速度と読み込み方法の違いdivとtableの違いは速度ではなく、読み込み方法です。速度はネット...

Mysql データベース ストアド プロシージャの基本構文の説明

プロシージャ sp_name を削除します//これまで、MYSQL 構文の基礎知識について説明して...

Navicat の MySQL へのリモート接続が遅い理由の詳細な説明

最終的な解決策は最後の写真にありますリモート データベース ( Linux システム) に接続したと...

MySQL 集計統計データの低速クエリの最適化

前面に書かれた注文テーブル、アクセス記録テーブル、商品テーブルなど、日常生活でデータベースを操作する...

jsでシンプルなパズルゲームを実現する

この記事では、簡単なパズルゲームを実装するためのjsの具体的なコードを参考までに共有します。具体的な...

JS 4つの楽しいハッカー背景効果コードを共有する

目次例1例2例3例4例1 <html> <ヘッド> <title>...

MySQLトランザクションとSpring分離レベルの実装原理の詳細な説明

1. トランザクションはACID特性を持つ原子性: トランザクションは、トランザクションによって分割...

CSSは半透明の境界と複数の境界のシーン分析を実現します

シナリオ 1:半透明の境界線を実現するには: CSS スタイルのデフォルトの動作により、背景色はコン...

awk でのループの使用

同じコマンドを複数回実行するさまざまな種類のループについて学習しましょう。 awk スクリプトには、...

Nginx Httpモジュールシリーズにおけるautoindexモジュールの具体的な使用法

ブラウザ モジュールの主な機能は、http リクエスト ヘッダーの「User-Agent」の値とブラ...

CSS3 メディアクエリにおけるデバイス幅と幅の違いの詳細な説明

1.デバイス幅定義: 出力デバイスの画面表示幅を定義します。 Web ページが Safari で開か...

Dockerfile を使用して nginx イメージを構築する例

Dockerfile の紹介Docker は、Dockerfile の内容を読み取ってイメージを自動...

MySQLクエリキャッシュに関するヒント

目次序文QueryCache の概要クエリキャッシュ構成QueryCache の使用queryCac...

CSS を使用して小さな画像をプルダウンし、大きな画像と情報を表示する方法

今日は、Taobao、JD.comなどのショッピングモールでよく使われている、小さな画像の上にマウス...

Vue3 (パート 2) Ant Design Vue の統合

目次1. Ant Design Vueを統合する2. コンポーネントの使用1. 完全な引用2. コン...