ネットワーク

Contents

コマンド系


ip


CentOS7から導入された、ネットワーク関連全般のコマンド。

ルーティング


ブラックホールルーティング


特定の宛先へのルーティングを行わずに破棄する


ping X.X.X.X
# 到達しないこと
   
ip route del X.X.X.X/32
ip route

ss


TCP/UDPのコネクション情報を表示するコマンド。



ifconfig


CentOS6系まで使用されていたネットワークインタフェースに関するコマンド。
CentOS7からは使用できない。


arp


CentOS6系まで使用されていたARPテーブルに関するコマンド。
CentOS7からは使用できない。

ping


ICMPによる疎通確認を行うコマンド

tracepath


トレースルートを行う。
ランダムなポート番号のUDPを使用し、ICMPやTCPは使用できない。

mtr


tracepathと同じであるが、結果を表示し続け、経路が変化するとその変化をわかりやすく表示する。
標準ではインストールされていないツールである。


traceroute


tracepathと同じであり、トレースルートを行う。
標準ではインストールされていないツールである。


tcpdump


CUIのパケットキャプチャソフト。
実行時はrootユーザで実行する必要がある。その他のユーザでは、起動はするが、直ちに終了する。

ポート制限



IP / ホスト名指定


下記ではIPアドレスの代わりにホスト名を指定することもできる。

その他のオプション




netstat


CentOS6系まで使用されていたネットワークステータスに関するコマンド。
CentOS7からは使用できない。

nc




route


CentOS6系まで使用されていたルーティングに関するコマンド。
CentOS7からは使用できない。

iwconfig



nmcli


ネットワーク全般の管理コマンド。
サブコマンドは省略可能。
例えば、「nmcli connection modify」は「nmcli c mod」とできる。※modifyのほか、monitorがあるので、modまでしか省略できない。


使用方法を確認する


helpサブコマンドで、可能なコマンド、コマンドの意味を表示できる。


NICのステータスを確認する


nmcli device show

NICの設定内容を確認する


nmcli connection show <NIC名>

ルーティングの追加


nmcli connection modify <NIC名> [+|-]ipv4.routes "<ネットワークアドレス>/<プレフィックス長> <ネクストホップ>"
ゲートウェイの場合はこちら
nmcli connection modify <NIC名> [+|-]ipv4.gateway "<ゲートウェイ>"
オプション”+”を使用すると、現状の設定に追加できる。
オプション”-“を使用すると、現状の設定から削除できる。
オプション”+”、”-“を使用しないと、現状の設定がすべて置き換わる。


DNSサーバの設定


nmcli connection modify <NIC名> ipv4.dns "<IPアドレス>[ <IPアドレス>...]"

IPアドレスの変更


nmcli connection modify <NIC名> [+|-]ipv4.address <IPアドレス>/<プレフィックス長>
オプション”+”を使用すると、現状の設定に追加できる。
オプション”-“を使用すると、現状の設定から削除できる。
オプション”+”、”-“を使用しないと、現状の設定がすべて置き換わる。

ファイル系


/etc/hostname


ホスト名を記載する。
ファイルに書き込んでもコンソールには直ちには反映されず、次回ログイン時に反映される。


/etc/hosts


IPアドレスと名前の対応を記述できる。
この名前を用いてPINGなどを行えば、IPアドレスに変換される。
hostコマンドなどのDNS解決コマンドでは、名前からIPアドレスは取得できない。


例えば、
192.168.0.1 abc
と記述すれば、abcという名前で、192.168.0.1にアクセス可能。

/etc/networks


ネットワークアドレスと名前の対応を記述できる。
routeコマンドのようなネットワークアドレスを表示させる際に名前で表示できる。
ネットワークアドレスで表示させたい場合は削除してしまえばよい。



/etc/nsswitch.conf


名前解決をする際にhostsファイルやDNSなど、どの順序で解決を試みるか優先順位を設定する。

/etc/resolv.conf


使用するDNSサーバのアドレスを記述できる。
CentOS7からはファイルに直接書き込んでもネットワークの再起動で削除される。
NIC設定ファイルに記載する必要がある。


/etc/sysconfig/network


ホスト名やゲートウェイのアドレスなどを記述できる。
任意の項目のみ記述すればよい。


/etc/sysconfig/network-scripts/


ネットワーク関連の設定を行う各種ファイルが格納されているディレクトリ

/etc/sysconfig/network-scripts/route-<インタフェース名>


ルーティングの設定を行う。
ファイルのインタフェース名はルーティング後にパケットを送出するインタフェースを指定する。


/etc/iproute2/rt_tables


複数のルーティングテーブルを定義する際の設定ファイル。
ルーティングテーブルを複数作成し、ポリシーごとに切り替えて使うことができる。
通常は本設定ファイルに記載の”main”テーブルが使用される。

/etc/network/interfaces



/etc/sysctl.conf


カーネルパラメータを設定する

IPv6の無効化


echo "net.ipv6.conf.all.disable_ipv6 = 1" >> /etc/sysctl.conf
echo "net.ipv6.conf.default.disable_ipv6 = 1" >> /etc/sysctl.conf

ボンディング


ステータス確認


cat /proc/net/bonding/bond0
出力例
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

Bonding Mode: fault-tolerance (active-backup)
Primary Slave: eno1 (primary_reselect always)
Currently Active Slave: eth0
MII Status: up
MII Polling Interval (ms): 0
Up Delay (ms): 0
Down Delay (ms): 0
ARP Polling Interval (ms): 1000
ARP IP target/s (n.n.n.n form): 10.X.X.X

Slave Interface: eth0
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 2
Permanent HW addr: XX:XX:XX:XX:XX:XX
Slave queue ID: 0

Slave Interface: eth1
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 1
Permanent HW addr: XX:XX:XX:XX:XX:XX
Slave queue ID: 0

設定


/etc/sysconfig/network-scripts/ifcfg-bond0
設定例
DEVICE=bond0
TYPE=Bond
BONDING_MASTER=yes
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=bond0
UUID=XXX
ONBOOT=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
RES_OPTIONS="timeout:1 attempts:1" 
BONDING_OPTS="arp_validate=3 mode=active-backup arp_interval=1000 primary=eno1 arp_ip_target=10.10.150.251" 
IPADDR=10.X.X.X
PREFIX=24
GATEWAY=10.X.X.X

ifcfg-eth0

TYPE=Ethernet
NAME=eth0
UUID=XXX
DEVICE=eth0
ONBOOT=yes
MASTER=bond0
SLAVE=yes


ifcfg-eth1

TYPE=Ethernet
NAME=eth1
UUID=XXX
DEVICE=eth1
ONBOOT=yes
MASTER=bond1
SLAVE=yes

Notice: Trying to get property 'queue' of non-object in /usr/local/wordpress/wp-includes/script-loader.php on line 2876

Warning: Invalid argument supplied for foreach() in /usr/local/wordpress/wp-includes/script-loader.php on line 2876