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

推薦する

JavaScript キャンバス テトリス ゲーム

テトリスは非常に古典的な小さなゲームで、私もそれを書いてみました。しかし、できるだけ簡潔で論理的なコ...

MySQLオンラインデッドロック分析練習

序文MySQL を学習する際に、MySQL のロック メカニズムについて簡単に理解したことがあると思...

Vue3 でモバイル ログインおよび登録モジュールをエレガントに実装する方法

目次序文入力ボックスコンポーネントレイアウトvモデルデータ検証ルール設計形状サブコンポーネントは検証...

HTML webpackプラグインの使用に関する簡単な分析

html-webpack-pluginプラグインを使用してページを開始すると、htmlページをメモリ...

HTML における DTD の使用法の概要

DTD はマークアップの文法規則のセットです。これは XML 1.0 仕様の一部であり、HTML フ...

MySQL 学習チュートリアル クラスター化インデックス

クラスタリングは、実際には InnoDB データベース エンジンに関連しています。したがって、インデ...

CentOS 8.4 に Docker をインストールする詳細なチュートリアル

目次序文:システム要件:インストール環境:古いバージョンをアンインストールします: yum は具体的...

React Stateの状態とライフサイクルの実装方法

1. コンポーネントの実装方法:組件名稱首字母必須大寫1. JS関数を通じてコン​​ポーネントを実装...

Ubuntu 18.04 (物理マシン) で OpenWRT 開発環境を構成する方法

1. 仮想マシン(物理マシン)をインストールする仮想マシンまたは物理マシンにインストールできます。 ...

JavaScriptクロージャの原理と機能の詳細な説明

目次導入クロージャの使用カレー作りパブリック変数の実装キャッシュカプセル化(属性のプライベート化)閉...

Linux+ApacheサーバURLの大文字と小文字の区別の問題を解決する

今日、問題が発生しました。ブラウザのアドレスバーにURLアドレスを入力する際、ページを正常にアクセス...

NginxはIP経由の直接アクセスを禁止し、カスタム500ページにリダイレクトします

設定ファイルに直接 サーバー{ listen 80 default; # IPへの直接アクセスを禁止...

超詳細なMySQL使用仕様の共有

最近、データベース関連の操作が多くなり、会社の既存の仕様はあまり包括的ではありません。インターネット...

Linux でユーザー アカウントをロックおよびロック解除する 3 つの方法

組織内で何らかのパスワード ポリシーがすでに実装されている場合は、この記事を読む必要はありません。た...

CSS 向け SASS スタイル プログラミング ガイド

SASS を使用する開発者が増えるにつれて、SASS コードの数に注意する必要があります。 SASS...