LFCA:基本的なネットワーキングコマンドの学習 – パート4

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
Traceroute – Network Diagnostic Tool

4. mtrコマンド

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

$ mtr google.com
mtr – network analysis and troubleshooting tool

5. ifconfigコマンド

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

$ ifconfig
ifconfig – lists network interfaces

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

$ ifconfig enp0s3
Check Network Interface

6. IPコマンド

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

$ ip address
IP Network Configuration Tool

7. ip routeコマンド

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

$ ip route 
OR
$ ip route show
List Network Routing Table

8. digコマンド

digユーティリティDomain Information Groperの略)は、DNSネームサーバーを調査するためのコマンドラインツールです。ドメイン名を引数として受け取り、ホストアドレス、Aレコード、MX(メール交換)レコード、ネームサーバーなどの情報を表示します。

要するに、digコマンドはDNSルックアップユーティリティであり、主にシステム管理者がDNSトラブルシューティングに使用します。

$ dig ubuntu.com
dig – Network Administration Tool

9. nslookupコマンド

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

$ nslookup ubuntu.com
Domain Name Server Lookup

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
List Active TCP Connections

11. ssコマンド

ssコマンドは、ソケット統計をダンプし、netstatコマンドと同様の方法でシステムネットワークメトリクスを表示するために使用されるネットワークツールです。 ssコマンドはnetstatよりも高速であり、netstatよりもTCPおよびネットワーク統計についてより多くの情報を表示します。

$ ss     #list al connections
$ ss -l  #display listening sockets 
$ ss -t  #display all TCP connection

それは、特に自宅やオフィス環境での小さなネットワークの問題を解決する際に役立つ基本的なネットワークコマンドの概要でした。ネットワークのトラブルシューティングスキルを磨くために、時々試してみてください。

Source:
https://www.tecmint.com/basic-networking-commands/