コンピューターは情報やリソースを交換するためにネットワークに接続されています。2台以上のコンピューターがコンピューターネットワークと呼ばれるネットワークメディアを介して接続されています。コンピューターネットワークを形成するために、いくつかのネットワークデバイスやメディアが関与しています。
Linuxオペレーティングシステムを搭載したコンピューターは、そのマルチタスクおよびマルチユーザーの性質によって、小規模なネットワークでも大規模なネットワークでもネットワークの一部になることができます。システムおよびネットワークの維持と稼働を維持するのは、システム/ネットワーク管理者の仕事です。
[ こちらもおすすめ: Sysadminのための22のLinuxネットワーキングコマンド ]
この記事では、Linuxでよく使用されるネットワーク構成およびトラブルシューティングコマンドを見ていきます。
1. ifconfigコマンド
ifconfig(インターフェースコンフィギュレーター)コマンドは、インターフェースを初期化し、インターフェースにIPアドレスを割り当て、必要に応じてインターフェースを有効または無効にします。
このコマンドを使用すると、IPアドレスやハードウェア / MACアドレスがインターフェースに割り当てられ、MTU(最大転送ユニット)サイズも表示できます。
# ifconfig eth0 Link encap:Ethernet HWaddr 00:0C:29:28:FD:4C inet addr:192.168.50.2 Bcast:192.168.50.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe28:fd4c/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:6093 errors:0 dropped:0 overruns:0 frame:0 TX packets:4824 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:6125302 (5.8 MiB) TX bytes:536966 (524.3 KiB) Interrupt:18 Base address:0x2000 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:8 errors:0 dropped:0 overruns:0 frame:0 TX packets:8 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:480 (480.0 b) TX bytes:480 (480.0 b)
ifconfigコマンドは、インターフェース(eth0など)を指定すると、IPアドレス、MACアドレスなどの特定のインターフェースの詳細を表示します。-a
オプションを使用すると、無効になっている場合でも利用可能なすべてのインターフェースの詳細が表示されます。
# ifconfig eth0 eth0 Link encap:Ethernet HWaddr 00:0C:29:28:FD:4C inet addr:192.168.50.2 Bcast:192.168.50.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe28:fd4c/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:6119 errors:0 dropped:0 overruns:0 frame:0 TX packets:4841 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:6127464 (5.8 MiB) TX bytes:539648 (527.0 KiB) Interrupt:18 Base address:0x2000
LinuxでIPアドレスとゲートウェイを設定
インターフェースにIPアドレスとゲートウェイを設定します。この設定はシステムの再起動時に削除されます。
# ifconfig eth0 192.168.50.5 netmask 255.255.255.0
特定のインターフェースの有効化または無効化
特定のインターフェースを有効または無効にするには、次の例のようなコマンドを使用します。
eth0の有効化
# ifup eth0
eth0の無効化
# ifdown eth0
MTUサイズの設定
デフォルトでは、MTUサイズは1500です。以下のコマンドを使用して、必要なMTUサイズを設定できます。サイズにはXXXXを置き換えます。
# ifconfig eth0 mtu XXXX
プロミスキャスモードでインターフェースを設定
ネットワークインターフェースはその特定のNICに属するパケットのみを受信します。インターフェースをプロミスキャスモードにすると、すべてのパケットを受信します。これは後でパケットをキャプチャして分析するのに非常に役立ちます。このため、スーパーユーザーアクセスが必要になる場合があります。
# ifconfig eth0 - promisc
更新:ほとんどの現代のLinuxディストリビューションでは、ifconfigコマンドがIPコマンドに置き換えられています。
2. ピンクコマンド
ピング(パケットインターネットグローパー)コマンドは、2つのノード間の接続をテストする最良の方法です。それがローカルエリアネットワーク(LAN)であるか、広域ネットワーク(WAN)であるかに関係なく。
ピングは他のデバイスと通信するためにICMP(Internet Control Message Protocol)を使用します。以下のコマンドを使用してホスト名またはIPアドレスにpingできます。
# ping 4.2.2.2 PING 4.2.2.2 (4.2.2.2) 56(84) bytes of data. 64 bytes from 4.2.2.2: icmp_seq=1 ttl=44 time=203 ms 64 bytes from 4.2.2.2: icmp_seq=2 ttl=44 time=201 ms 64 bytes from 4.2.2.2: icmp_seq=3 ttl=44 time=201 ms OR # ping www.tecmint.com PING tecmint.com (50.116.66.136) 56(84) bytes of data. 64 bytes from 50.116.66.136: icmp_seq=1 ttl=47 time=284 ms 64 bytes from 50.116.66.136: icmp_seq=2 ttl=47 time=287 ms 64 bytes from 50.116.66.136: icmp_seq=3 ttl=47 time=285 ms
Linuxのpingコマンドは、中断するまで実行を続けます。 -c
オプションを付けてpingすると、N個のリクエスト(成功またはエラー応答)後に終了します。
# ping -c 5 www.tecmint.com PING tecmint.com (50.116.66.136) 56(84) bytes of data. 64 bytes from 50.116.66.136: icmp_seq=1 ttl=47 time=285 ms 64 bytes from 50.116.66.136: icmp_seq=2 ttl=47 time=285 ms 64 bytes from 50.116.66.136: icmp_seq=3 ttl=47 time=285 ms 64 bytes from 50.116.66.136: icmp_seq=4 ttl=47 time=285 ms 64 bytes from 50.116.66.136: icmp_seq=5 ttl=47 time=285 ms --- tecmint.com ping statistics --- 5 packets transmitted, 5 received, 0% packet loss, time 4295ms rtt min/avg/max/mdev = 285.062/285.324/285.406/0.599 ms
3. トレースルートコマンド
tracerouteは、目的地に到達するまでにかかるホップ数を示すネットワークトラブルシューティングユーティリティであり、パケットの移動経路を決定します。以下では、グローバルDNSサーバーのIPアドレスまでの経路を追跡し、目的地に到達できることを示し、パケットの移動経路も表示します。
# traceroute 4.2.2.2 traceroute to 4.2.2.2 (4.2.2.2), 30 hops max, 60 byte packets 1 192.168.50.1 (192.168.50.1) 0.217 ms 0.624 ms 0.133 ms 2 227.18.106.27.mysipl.com (27.106.18.227) 2.343 ms 1.910 ms 1.799 ms 3 221-231-119-111.mysipl.com (111.119.231.221) 4.334 ms 4.001 ms 5.619 ms 4 10.0.0.5 (10.0.0.5) 5.386 ms 6.490 ms 6.224 ms 5 gi0-0-0.dgw1.bom2.pacific.net.in (203.123.129.25) 7.798 ms 7.614 ms 7.378 ms 6 115.113.165.49.static-mumbai.vsnl.net.in (115.113.165.49) 10.852 ms 5.389 ms 4.322 ms 7 ix-0-100.tcore1.MLV-Mumbai.as6453.net (180.87.38.5) 5.836 ms 5.590 ms 5.503 ms 8 if-9-5.tcore1.WYN-Marseille.as6453.net (80.231.217.17) 216.909 ms 198.864 ms 201.737 ms 9 if-2-2.tcore2.WYN-Marseille.as6453.net (80.231.217.2) 203.305 ms 203.141 ms 202.888 ms 10 if-5-2.tcore1.WV6-Madrid.as6453.net (80.231.200.6) 200.552 ms 202.463 ms 202.222 ms 11 if-8-2.tcore2.SV8-Highbridge.as6453.net (80.231.91.26) 205.446 ms 215.885 ms 202.867 ms 12 if-2-2.tcore1.SV8-Highbridge.as6453.net (80.231.139.2) 202.675 ms 201.540 ms 203.972 ms 13 if-6-2.tcore1.NJY-Newark.as6453.net (80.231.138.18) 203.732 ms 203.496 ms 202.951 ms 14 if-2-2.tcore2.NJY-Newark.as6453.net (66.198.70.2) 203.858 ms 203.373 ms 203.208 ms 15 66.198.111.26 (66.198.111.26) 201.093 ms 63.243.128.25 (63.243.128.25) 206.597 ms 66.198.111.26 (66.198.111.26) 204.178 ms 16 ae9.edge1.NewYork.Level3.net (4.68.62.185) 205.960 ms 205.740 ms 205.487 ms 17 vlan51.ebr1.NewYork2.Level3.net (4.69.138.222) 203.867 ms vlan52.ebr2.NewYork2.Level3.net (4.69.138.254) 202.850 ms vlan51.ebr1.NewYork2.Level3.net (4.69.138.222) 202.351 ms 18 ae-6-6.ebr2.NewYork1.Level3.net (4.69.141.21) 201.771 ms 201.185 ms 201.120 ms 19 ae-81-81.csw3.NewYork1.Level3.net (4.69.134.74) 202.407 ms 201.479 ms ae-92-92.csw4.NewYork1.Level3.net (4.69.148.46) 208.145 ms 20 ae-2-70.edge2.NewYork1.Level3.net (4.69.155.80) 200.572 ms ae-4-90.edge2.NewYork1.Level3.net (4.69.155.208) 200.402 ms ae-1-60.edge2.NewYork1.Level3.net (4.69.155.16) 203.573 ms 21 b.resolvers.Level3.net (4.2.2.2) 199.725 ms 199.190 ms 202.488 ms
4. ネットスタットコマンド
Netstat(ネットワーク統計)コマンドは、接続情報、ルーティングテーブル情報などを表示します。ルーティングテーブル情報を表示するには、-r
オプションを使用します。
# netstat -r Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 192.168.50.0 * 255.255.255.0 U 0 0 0 eth0 link-local * 255.255.0.0 U 0 0 0 eth0 default 192.168.50.1 0.0.0.0 UG 0 0 0 eth0
Netstat コマンドのさらなる例については、Linux での 20 の Netstat コマンドの例をご覧ください。
更新: netstat コマンドは、ほとんどの現代の Linux ディストリビューションで ss (socket statistics) コマンドに置き換えられています。
5. Dig コマンド
Dig(domain information groper)は、A
レコード、CNAME、MX レコードなどの関連情報を問い合わせる DNS 関連の情報をクエリします。このコマンドは主に DNS 関連のクエリのトラブルシューティングに使用されます。
# dig www.tecmint.com; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.10.rc1.el6 <<>> www.tecmint.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<
Dig コマンドのさらなる例については、DNS をクエリする 10 の Linux Dig コマンドの記事をお読みください。
6. Nslookup コマンド
nslookup コマンドは、DNS 関連のクエリを調査するためにも使用されます。次の例は、tecmint.com の A
レコード(IP アドレス)を示しています。
# nslookup www.tecmint.com Server: 4.2.2.2 Address: 4.2.2.2#53 Non-authoritative answer: www.tecmint.com canonical name = tecmint.com. Name: tecmint.com Address: 50.116.66.136
Nslookup コマンドについての詳細は、8 つの Linux Nslookup コマンドの例を読んでください。
7. ルートコマンド
routeコマンドは、IPルーティングテーブルを表示および操作します。Linuxでデフォルトのルーティングテーブルを表示するには、次のコマンドを入力します。
# route Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.50.0 * 255.255.255.0 U 0 0 0 eth0 link-local * 255.255.0.0 U 1002 0 0 eth0 default 192.168.50.1 0.0.0.0 UG 0 0 0 eth0
次のコマンドでルートの追加、削除、およびデフォルトゲートウェイを設定できます。
Linuxでルートを追加する
# route add -net 10.10.10.0/24 gw 192.168.0.1
Linuxでルートを削除する
# route del -net 10.10.10.0/24 gw 192.168.0.1
Linuxでデフォルトゲートウェイを追加する
# route add default gw 192.168.0.1
8. ホストコマンド
hostコマンドは、IPまたは名前をIPv4またはIPv6に変換し、またDNSレコードをクエリします。
# host www.google.com www.google.com has address 173.194.38.180 www.google.com has address 173.194.38.176 www.google.com has address 173.194.38.177 www.google.com has address 173.194.38.178 www.google.com has address 173.194.38.179 www.google.com has IPv6 address 2404:6800:4003:802::1014
-t
オプションを使用して、CNAME、NS、MX、SOAなどのDNSリソースレコードを取得できます。
# host -t CNAME www.redhat.com www.redhat.com is an alias for wildcard.redhat.com.edgekey.net.
9. Arpコマンド
ARP(アドレス解決プロトコル)は、カーネルのARPテーブルの内容を表示/追加するために役立ちます。デフォルトのテーブルを表示するには、次のコマンドを使用します。
# arp -e Address HWtype HWaddress Flags Mask Iface 192.168.50.1 ether 00:50:56:c0:00:08 C eth0
10. Ethtoolコマンド
ethtoolはmii-toolの代替です。ネットワークインターフェースカード(NIC)の速度とデュプレックスを表示および設定するためのものです。デュプレックスを永続的に設定するには、/etc/sysconfig/network-scripts/ifcfg-eth0内のETHTOOL_OPTS変数を使用します。
# ethtool eth0 Settings for eth0: Current message level: 0x00000007 (7) Link detected: yes
11. Iwconfigコマンド
iwconfigコマンドは、Linuxで無線ネットワークインターフェースを設定するために使用されます。 Wi-FiのSSID、チャネル、暗号化などの基本的な詳細を表示および設定できます。詳細については、iwconfigのmanページを参照してください。
# iwconfig [interface]
12. ホスト名コマンド
ホスト名はネットワーク内で識別するためのものです。 hostnameコマンドを実行してボックスのホスト名を表示します。適切なホスト名を設定したら、/etc/sysconfig/networkにホスト名を永続的に設定する必要があります。設定後はボックスを再起動する必要があります。
# hostname tecmint.com
13. NmcliおよびNmtuiツール
NmcliおよびNmtuiツールは、Linuxシステムでネットワーク設定を構成し、ネットワークデバイスを管理し、ネットワーク接続を作成、変更、有効化/無効化、削除するために使用されます。
# nmcli # nmtui

この記事は、Linuxネットワーク管理者がLinux / Unix系オペレーティングシステムでの日常的な使用に役立ちます。見逃した部分があれば、コメントボックスを通じて共有してください。
Source:
https://www.tecmint.com/linux-network-configuration-and-troubleshooting-commands/