LinuCレベル2 201試験の例題と解説
2.03.2高度なネットワーク構成
今回は201試験の試験範囲から「2.03.2 高度なネットワーク構成」についての例題を解いてみます。
Linuxをルータとして使用するための設定方法についての例題です。
例題
LinuxをIPv4のルータとして使用するための設定として誤っているものを選択してください。
- echo 1 > /proc/sys/net/ipv4/ip_forward を実行する。
- ip router on を実行する。
- sysctl net.ipv4.ip_forward=1 を実行する。
- /etc/sysctl.conf に net.ipv4.ip_forward=1 を記載し、sysctl -p を実行する。
※この例題は実際の試験問題とは異なります。
解答と解説
正解は、「2. ip router on を実行する。」です。
LinuxをIPv4のルータとして使用する場合、IPフォワードの機能を有効にする必要があります。
Linuxサーバに複数のNIC(ネットワークインタフェースカード)を取り付けた時、標準設定ではひとつのNICからの通信を別のNICに転送することはありません。
IPフォワードの機能を有効にすると、ひとつのNICからの通信を、ルーティングテーブルに従って、他のNICに転送することができるようになります。
IPフォワードの機能を有効にするには /proc/sys/net/ipv4/ip_forward の内容を 1 に設定します。
# echo 1 > /proc/sys/net/ipv4/ip_forward
IPフォワード機能が有効になったかどうかは下記のコマンドで確認することができます。
# cat /proc/sys/net/ipv4/ip_forward
1
カーネルパラメータを動的に設定するコマンドである sysctl を使用して、IPフォワードを有効にすることもできます。
# sysctl net.ipv4.ip_forward=1
net.ipv4.ip_forward = 1
sysctlコマンドで、IPフォワード機能が有効になったかどうかを確認することもできます。
# sysctl net.ipv4.ip_forward
net.ipv4.ip_forward = 1
上記の方法は、一時的にIPフォワード機能を有効にするだけであり、Linuxサーバを再起動した場合、その設定は有効にはなりません。
恒久的にIPフォワード機能を有効にする場合、sysctlの初期設定ファイルである /etc/sysctl.conf に下記の設定を追加します。
net.ipv4.ip_forward = 1
この設定を追加しておけば、Linuxサーバを再起動した時でもIPフォワード機能が有効になります。
例題の選択肢について解説します。
1.echo 1 > /proc/sys/net/ipv4/ip_forward を実行する。
正しい説明です。
2.ip router on を実行する。
誤った説明です。
ip コマンドに router というサブオプションはありません。
3.sysctl net.ipv4.ip_forward=1 を実行する。
正しい説明です。
4./etc/sysctl.conf に net.ipv4.ip_forward=1 を記載し、sysctl -p を実行する。
正しい説明です。
/etc/sysctl.confに設定した内容を即時に反映したい場合、sysctl -p を使用することができます。
LinuxのIPフォワードについて理解し、Linuxをルータとして使用するための方法を覚えておきましょう。
例題作成者
株式会社デージーネット OSS研究室 大野 公善