デバイス状態とネットワークの状態確認: Linuxのip aとTCP/IP通信のモニタリング手法

この記事は < 1 分で読めます。
概要

本記事では、Linux環境でのデバイス状態やネットワークの状態確認の方法を詳しく解説します。特にip aコマンドを使ってネットワークインターフェイスの確認や、ss -atnコマンドを使用してTCP/IP通信の状態をモニタリングする方法について最新情報を交えながら手順を追います。

管理人

本記事の読者層は以下の方を想定しています。

本記事の読者層
  • 基本的なコマンド操作を知りたい人。
  • システムのトラブルシューティングをする人。
  • ネットワークのパフォーマンスを監視したい人。
目次

Linuxでのデバイス状態を確認する方法

ip a コマンドでデバイス状態を確認

Linuxでネットワークの状態確認を行う際、最も基本的なコマンドの1つがip aです。このコマンドは、現在のデバイスのIPアドレスやリンク状態を表示し、ネットワークインターフェイスの状況を確認できます。例えば、以下のようにターミナルで実行します。

$ ip a

実行すると、以下のような出力が表示されます。

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: enp30s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 68:b5:99:e3:8e:78 brd ff:ff:ff:ff:ff:ff
    inet 192.168.120.100/24 brd 192.168.12.255 scope global enp30s0
       valid_lft forever preferred_lft forever
    inet6 fd81:8284:c9fb:529e:6ab5:99ff:fee3:8e78/64 scope global dynamic mngtmpaddr
       valid_lft 1788sec preferred_lft 1788sec
    inet6 fe80::6ab5:99ff:fee4:8e78/64 scope link
       valid_lft forever preferred_lft forever

各フィールドの解説

上記の例で確認できるフィールドの一部は以下の通りです。

  • lo: ループバックインターフェイス。ローカルホストでの内部通信に使用され、外部通信には関与しません。例えば、127.0.0.1などのアドレスが割り当てられます。
  • enp30s0: 実際に使用されているネットワークインターフェイス。192.168.120.100/24のように、プライベートネットワーク内のIPアドレスが設定されています。
  • inet6: IPv6アドレスを表示。現代のネットワークではIPv6対応も進んでおり、これも確認可能です。

デバイス状態の詳細確認

ネットワークデバイスの状態は、以下のステータスで示されます。

  • UP: ネットワークデバイスがアクティブで、通信可能な状態です。
  • DOWN: デバイスが無効であるか、物理的な接続が存在しない場合です。
  • LOWER_UP: 物理リンクがアクティブであることを示します。

これらの情報を使うことで、デバイス状態が正常か、または接続に問題があるかを判断できます。

ネットワークの状態確認: ss -atn コマンドでのTCP/IP通信のモニタリング

ss -atn コマンドによるTCP/IPの状態監視

ネットワーク通信の詳細な状態を確認する際、ss -atnコマンドは非常に便利です。このコマンドを使うことで、システムが現在どのポートで通信をリッスンしているか、どのTCP接続が確立されているかなどを確認できます。以下のコマンドで状況を確認できます。

$ ss -atn

実行結果は以下のように表示されます。

ss -atn
State   Recv-Q    Send-Q        Local Address:Port         Peer Address:Port
LISTEN  0         128               127.0.0.1:27016             0.0.0.0:*
LISTEN  0         80                127.0.0.1:3301              0.0.0.0:*
LISTEN  0         50                  0.0.0.0:139               0.0.0.0:*
LISTEN  0         10            192.168.12.100:50                0.0.0.0:*
LISTEN  0         10                127.0.0.1:50                0.0.0.0:*
LISTEN  0         128           127.0.0.53%lo:50                0.0.0.0:*
LISTEN  0         128                 0.0.0.0:23                0.0.0.0:*
LISTEN  0         5                 127.0.0.1:632               0.0.0.0:*
LISTEN  0         128               127.0.0.1:952               0.0.0.0:*
LISTEN  0         50                  0.0.0.0:442               0.0.0.0:*

ss -atn の各フィールドの解説

  • State: ソケットの状態。LISTENは接続待機状態、ESTABLISHEDは接続が確立されている状態を意味します。
  • Recv-Q / Send-Q: 受信・送信キューのサイズ。0であれば、遅延がないことを示します。
  • Local Address: ローカルのIPアドレスとポート番号です。
  • Peer Address: 通信相手のIPアドレスとポート番号を表します。

TCP/IP通信の監視とネットワークトラブルシューティング

この情報を使って、特定のポートで異常な数の接続待機が発生していないか、あるいは通信が過剰に確立されていないかを確認することができます。例えば、過剰なESTABLISHED接続は、DDoS攻撃やシステム負荷の原因となる場合があるため、注意が必要です。

定量的なネットワークの状態確認と分析

デバイス状態の定量的分析

ip aコマンドで得られる情報を定量的に分析することで、システム全体のネットワーク状態を把握できます。例えば、以下のようなデータを定量化して管理すると、ネットワーク運用の効率が向上します。

  • 使用中のIPアドレス数
  • 各インターフェイスの通信状態(UP/DOWNの割合)
  • 無効インターフェイスの数とその影響

ネットワーク負荷の評価

ss -atnの出力を使い、同時接続数や待機中のソケット数をモニタリングすることで、システムの負荷を定量的に評価できます。特定のポートでリッスンしている通信数が異常に増加した場合や、接続が確立されたままの状態が多い場合は、サーバーに過負荷がかかっている可能性があります。

最新のネットワーク確認手法と実践

Ubuntu 22.04における変更点

Ubuntu 22.04やそれ以降のバージョンでは、ネットワークの状態確認に関連するツールやコマンドにいくつかの改善点があります。特に、netplanの設定ファイルでネットワーク構成が管理されるようになっているため、ip aの結果とnetplanの設定が一致しているかを確認することが重要です。

今後のネットワーク管理の展望

IPv6の普及に伴い、ネットワークの構成やデバイス状態の確認も複雑化しています。将来的には、より自動化されたツールや管理手法が求められますが、基本的なコマンドの理解は依然として重要です。

実際の手順: ネットワーク状態を確認する

ip a コマンドでのデバイス状態確認手順

  • ターミナルを開く。
  • ip aを実行し、出力された情報を確認する。
  • 各ネットワークインターフェイスの状態(UP/DOWN)を確認する。
  • 必要に応じて、問題のあるインターフェイスを再起動する。

ss -atn でのTCP/IP通信確認手順

  • ターミナルでss -atnコマンドを実行する。
  • 出力されたリストで、異常な接続や待機中のソケットがないか確認する。
  • 必要に応じて、特定のポートを閉じるか、システムを再調整する。

まとめ

本記事のまとめ

次回の記事をご期待下さい。どうぞよろしくお願いいたします。

関連リンク

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次