PCを使用する際には、ルーターに接続されているネットワークの一部になります。オフィス環境にいるか、単に自宅で作業しているかにかかわらず、コンピューターはネットワーク上にあります。
コンピューターネットワークとは何ですか?
A computer network is defined as a group of 2 or more computers that are connected and can electronically communicate with each other. The computers are identified using their hostnames, IP, and mac addresses.
A simple home or office network is referred to as a LAN, short for Local Area Network. A LAN covers a small area such as a home, office, or restaurant network. In contrast, a WAN (Wide Area Network) spans a large geographical region. WAN is mostly used to connect various sites such as office buildings in different locations.
この記事は、第4部のLFCAシリーズの一部であり、この部分では、一般的なネットワーキングコマンドについて紹介し、トラブルシューティングでどれほど役立つかを説明します。
1. hostnameコマンド
ホスト名コマンドはLinuxシステムのホスト名を表示します。これは通常、インストール時に設定されています。ホスト名を確認するには、以下のコマンドを実行します:
$ hostname tecmint
2. pingコマン
パケットインターネットグローパーの略称である、pingコマンドは2つのシステムやサーバー間の接続をチェックするために使用されます。リモートホストにICMPエコーリクエストを送信し、返信を待ちます。ホストが起動している場合、エコーリクエストはリモートホストからバウンスし、ユーザーにホストが起動しているか利用可能であることを通知します。
pingコマンドは以下の構文を取ります。
$ ping options IP address
たとえば、IPが192.168.2.103のローカルエリアネットワーク内のホストにpingを送信する場合、次のコマンドを実行します:
$ ping 192.168.2.103 PING 192.168.0.123 (192.168.0.123) 56(84) bytes of data. 64 bytes from 192.168.2.103: icmp_seq=1 ttl=64 time=0.043 ms 64 bytes from 192.168.2.103: icmp_seq=2 ttl=64 time=0.063 ms 64 bytes from 192.168.2.103: icmp_seq=3 ttl=64 time=0.063 ms 64 bytes from 192.168.2.103: icmp_seq=4 ttl=64 time=0.061 ms 64 bytes from 192.168.2.103: icmp_seq=5 ttl=64 time=0.062 ms
pingコマンドは、ICMPピンクパケットを送信し続け、キーボードのCtrl + C
を押して中断するまで続けます。ただし、-c
オプションを使用して送信されるパケット数を制限することもできます。
以下の例では、5つのエコーリクエストパケットを送信し、完了したらpingコマンドが停止します。
$ ping 192.168.2.103 -c 5 PING 192.168.0.123 (192.168.0.123) 56(84) bytes of data. 64 bytes from 192.168.2.103: icmp_seq=1 ttl=64 time=0.044 ms 64 bytes from 192.168.2.103: icmp_seq=2 ttl=64 time=0.052 ms 64 bytes from 192.168.2.103: icmp_seq=3 ttl=64 time=0.066 ms 64 bytes from 192.168.2.103: icmp_seq=4 ttl=64 time=0.056 ms 64 bytes from 192.168.2.103: icmp_seq=5 ttl=64 time=0.066 ms --- 192.168.2.103 ping statistics --- 5 packets transmitted, 5 received, 0% packet loss, time 4088ms rtt min/avg/max/mdev = 0.044/0.056/0.066/0.008 ms
さらに、ホストやサーバーのドメイン名にもpingを送信することができます。たとえば、Googleにpingを送信することができます。
$ ping google.com PING google.com (142.250.183.78) 56(84) bytes of data. 64 bytes from bom12s12-in-f14.1e100.net (142.250.183.78): icmp_seq=1 ttl=117 time=2.86 ms 64 bytes from bom12s12-in-f14.1e100.net (142.250.183.78): icmp_seq=2 ttl=117 time=3.35 ms 64 bytes from bom12s12-in-f14.1e100.net (142.250.183.78): icmp_seq=3 ttl=117 time=2.70 ms 64 bytes from bom12s12-in-f14.1e100.net (142.250.183.78): icmp_seq=4 ttl=117 time=3.12 ms ...
また、DNSにもpingを送信することができます。たとえば、Googleのアドレスである8.8.8.8にpingを送信することができます。
$ ping 8.8.8.8 -c 5 PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data. 64 bytes from 8.8.8.8: icmp_seq=1 ttl=118 time=3.24 ms 64 bytes from 8.8.8.8: icmp_seq=2 ttl=118 time=3.32 ms 64 bytes from 8.8.8.8: icmp_seq=3 ttl=118 time=3.40 ms 64 bytes from 8.8.8.8: icmp_seq=4 ttl=118 time=3.30 ms 64 bytes from 8.8.8.8: icmp_seq=5 ttl=118 time=2.92 ms --- 8.8.8.8 ping statistics --- 5 packets transmitted, 5 received, 0% packet loss, time 4005ms rtt min/avg/max/mdev = 2.924/3.237/3.401/0.164 ms
A failed ping test is pointed to one of the following:
- A host that is offline.
- 一般的なネットワーク障害。
- ICMPリクエストをブロックしているファイアウォールの存在。
3. tracerouteコマンド
tracerouteコマンドは、ICMP pingパケットがあなたのデバイスから宛先ホストやサーバーまでどのルートを通るかを表示します。リモート宛先に到達する前にパケットが通過するデバイスのIPアドレスを表示します。
2行目の出力には、ラウンドトリップでアスタリスク記号*
が表示されます。これは、パケットが破棄され、応答が受信されなかったことを示すインジケーターです。これは、ルーターによってパケットが破棄されたことを示し、ネットワークの混雑などさまざまな理由が考えられます。
Tracerouteコマンドは、pingコマンドで失敗した結果をトラブルシューティングするために使用できる便利な診断コマンドです。パケットが破棄されているデバイスを表示します。
$ traceroute google.com

4. mtrコマンド
mtr(my traceoute)コマンドは、pingコマンドとtracerouteコマンドの機能を組み合わせたものです。各パケットが通過するホストやネットワークホップの応答時間など、さまざまな統計情報を表示します。
$ mtr google.com

5. ifconfigコマンド
ifconfigコマンドは、PCに接続されているネットワークインターフェースと、各インターフェースに関連付けられたIPアドレス、サブネットマスク、MTUなどの統計情報をリストします。
$ ifconfig

inetパラメーターはネットワークインターフェイスのIPv4アドレスを表示し、inet6はIPv6アドレスを指します。インターフェースの詳細を表示するには、インターフェースを指定します。:
$ ifconfig enp0s3

6. IPコマンド
インターフェース統計を表示する別の方法は、ip addressコマンドを使用することです。
$ ip address

7. ip routeコマンド
ip routeコマンドは、PCのルーティングテーブルを出力します。
$ ip route OR $ ip route show

8. digコマンド
digユーティリティ(Domain Information Groperの略)は、DNSネームサーバーを調査するためのコマンドラインツールです。ドメイン名を引数として受け取り、ホストアドレス、Aレコード、MX(メール交換)レコード、ネームサーバーなどの情報を表示します。
要するに、digコマンドはDNSルックアップユーティリティであり、主にシステム管理者がDNSトラブルシューティングに使用します。
$ dig ubuntu.com

9. nslookupコマンド
nslookupユーティリティは、ドメイン名とAレコードを取得するために使用されるコマンドラインツールです。
$ nslookup ubuntu.com

10. netstatコマンド
netstatコマンドはネットワークインターフェイスの統計を表示します。ルーティングテーブル、各サービスがリッスンしているポート、TCPおよびUDP接続、PID、およびUIDを表示することができます。
PCに接続されているネットワークインターフェイスを表示するには、次のコマンドを実行してください。
$ netstat -i Kernel Interface table Iface MTU RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg enp1s0 1500 0 0 0 0 0 0 0 0 BMU lo 65536 4583 0 0 0 4583 0 0 0 LRU wlp2s0 1500 179907 0 0 0 137273 0 0 0 BMRU
ルーティングテーブルを確認するには、次のように-r
オプションを使用してください。
$ netstat -r Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface default _gateway 0.0.0.0 UG 0 0 0 wlp2s0 link-local 0.0.0.0 255.255.0.0 U 0 0 0 wlp2s0 192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 wlp2s0
アクティブなTCP接続を調べるには、次のコマンドを実行してください。
$ netstat -ant

11. ssコマンド
ssコマンドは、ソケット統計をダンプし、netstatコマンドと同様の方法でシステムネットワークメトリクスを表示するために使用されるネットワークツールです。 ssコマンドはnetstatよりも高速であり、netstatよりもTCPおよびネットワーク統計についてより多くの情報を表示します。
$ ss #list al connections $ ss -l #display listening sockets $ ss -t #display all TCP connection
要
それは、特に自宅やオフィス環境での小さなネットワークの問題を解決する際に役立つ基本的なネットワークコマンドの概要でした。ネットワークのトラブルシューティングスキルを磨くために、時々試してみてください。