LinuCレベル1 102試験の例題と解説
1.07.2基本的なネットワーク構成
今回は、LinuCレベル1 Version10.0 102試験の試験範囲から、「1.07.2 基本的なネットワーク構成」についての例題を解いてみます。
今回は、IPアドレスやルーティング設定に必ず必要になるipコマンドについて学んでみましょう。
例題
以下の選択肢から、誤っているipコマンドを一つ選択してください。
- ip addr add IPアドレス dev デバイス名
- ip -s a show デバイス名
- ip -r デバイス名
- ip link show dev デバイス名
※この例題は実際の試験問題とは異なります。
解答と解説
正解は、「 3. ip -r デバイス名 」です。
「ip」コマンドは、ネットワークデバイスやルーティング、ポリシーなどの表示と変更を行うコマンドになります。
ipコマンドの構文は以下の通りです。
$ ip (オプション) オブジェクト [サブコマンド]
オブジェクトは省略することはできませんが、短縮表記をすることができます。サブコマンドも同様に短縮表記ができます。例えばオブジェクトの「address」は、最小の省略が「a」であり、「addr」や「ad」といった省略も可能です。
サブコマンドを省略すると、「show」というサブコマンドが実行されます。
代表的なオブジェクトは以下の通りです。
- ip address
ネットワークインタフェースに設定されているIPアドレスを表示したり、ネットワークインタフェースにIPアドレスを設定したりすることができます。
表示結果は下記のようになります。
$ ip address show
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: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 06:b4:e0:00:00:d4 brd ff:ff:ff:ff:ff:ff
inet 10.1.1.111/16 brd 10.1.255.255 scope global noprefixroute ens3
valid_lft forever preferred_lft forever
inet6 fe80::d9c8:51f:1d16:43c0/64 scope link dadfailed tentative noprefixroute
valid_lft forever preferred_lft forever
- ip route
ルーティングテーブルの内容を表示します。また、デフォルトルートやスタティックルートを変更することができます。
表示結果は下記のようになります。
$ ip route show
default via 10.1.0.1 dev ens3 proto dhcp metric 100
10.1.0.0/16 dev ens3 proto kernel scope link src 10.1.1.111 metric 100
- ip link
ネットワークデバイスの現在の設定を表示します。また、ネットワークデバイスの状態をUPまたはDOWNに変更することができます。
表示結果は下記のようになります。
$ ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 06:b4:e0:00:00:d4 brd ff:ff:ff:ff:ff:ff
オプションには下記のようなものがあります。
- -s
情報をより詳しく表示します。例えば下記のように「ip -s link」を実行するとネットワークデバイス毎のパケット数などを表示します。
$ ip -s link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
RX: bytes packets errors dropped overrun mcast
266389346 696328 0 0 0 0
TX: bytes packets errors dropped carrier collsns
266389346 696328 0 0 0 0
- -o
デバイス毎の出力を1行にします。例えば「ip -o addrress」を実行すると、改行が"\"に置き換えられ下記のようになります。
$ ip -o address show
1: lo inet 127.0.0.1/8 scope host lo\ valid_lft forever preferred_lft forever
1: lo inet6 ::1/128 scope host \ valid_lft forever preferred_lft forever
2: ens3 inet 10.1.1.111/16 brd 10.1.255.255 scope global noprefixroute ens3\ valid_lft forever preferred_lft forever
2: ens3 inet6 fe80::d9c8:51f:1d16:43c0/64 scope link dadfailed tentative noprefixroute \ valid_lft forever preferred_lft forever
最後にサブコマンドについて説明します。
それぞれのオブジェクトにサブコマンドを使用することで、設定の変更等が可能になります。addressオブジェクトの代表的なサブコマンドは下記のとおりです。
- add
例えば下記のように使用することで、指定のデバイスにipアドレスを追加することができます。
# ip address add IPアドレス dev デバイス名
- del
こちらはaddの反対で、指定のデバイスからipアドレスを削除することができます。
# ip delete del IPアドレス dev デバイス名
- help
オブジェクトの使用方法を表示します。下記のように表示されます。
$ ip addr help
Usage: ip address {add|change|replace} IFADDR dev IFNAME [ LIFETIME ]
[ CONFFLAG-LIST ]
ip address del IFADDR dev IFNAME [mngtmpaddr]
ip address {save|flush} [ dev IFNAME ] [ scope SCOPE-ID ]
[ to PREFIX ] [ FLAG-LIST ] [ label LABEL ] [up]
ip address [ show [ dev IFNAME ] [ scope SCOPE-ID ] [ master DEVICE ]
[ type TYPE ] [ to PREFIX ] [ FLAG-LIST ]
[ label LABEL ] [up] [ vrf NAME ] ]
ip address {showdump|restore}
(以下省略)
選択肢の解説は以下です。
1. ip addr add IPアドレス dev デバイス名
このコマンドで、指定のデバイス名のIPアドレスを追加することが可能です。
addrとは「address」の省略になります。他にも同じ構文で、サブコマンドを変更することによってIPアドレスの変更・削除・置き換え等ができます。
2. ip -s a show デバイス名
このコマンドで、指定したネットワークデバイスの情報を表示することが可能です。 aとは「address」の省略になります。-sオプションによって、デバイス毎のパケット数などより詳細な情報を表示しています。
3. ip -r デバイス名
このコマンドは実行することができません。
ipコマンドでは、オブジェクトの指定が必須になります。オプションのみの指定では用いることはできません。また、-rオプションはアドレスの代わりにDNS名を表示するオプションになります。
4. ip link show dev デバイス名
このコマンドで、指定のデバイスのリンク情報やMACアドレスを確認することが可能です。
また、下記のサブコマンドを用いることでネットワークデバイスの状態をUPに変更することができます。
# ip link set dev デバイス名 up
ipコマンドはネットワークデバイス情報の確認・変更に非常に役に立ちます。オプションやサブコマンドの動作を把握して使えるようにしておきましょう。
例題作成者
株式会社デージーネット ソリューション開発部 山中咲彩