●デフォルトゲートウェイは、同一のホストで2つ同時に動作すると、ルーティングテーブル上どちらに送信するか判断が困難になる。
こうした重複した宛先に対するルーティングテーブル上のルートの比較には、通常、メトリックが用いられます。メトリックの値の少ない方が優先経路になる。
●マルチホーム
同一のホストにおいて、複数のインターフェイスや複数のIPアドレスなどにより、ネットワークへ接続する経路が複数ある状態のこと。
●Linuxをルータとして使用するためには、異なるネットワーク間(複数のネットワークインターフェース間)でのパケットの転送を許可する必要がある。パケットの転送を許可するにはsysctlコマンドでカーネルパラメータ「net.ipv4.ip_forward」の値を1に設定。
sysctl -w net.ipv4.ip_forward=1
sysctlコマンド以外にも、「/proc/sys」以下に存在するカーネルパラメータを操作するための仮想ファイルの内容を変更する方法もある。
echo 1 > /proc/sys/net/ipv4/ip_forward
※この2つの方法で設定した場合はすぐに反映されるが、再起動時に設定が失われる。
恒久的に(再起動後も)設定を有効にするためには、起動時に自動実行されるスクリプトを編集し、起動毎に設定したい値を変更するsysctlコマンドを実行するようにするか、「/etc/sysctl.conf」または「/etc/sysctl.d」ディレクトリ配下の設定ファイルに設定を記述。この場合、再起動前に設定を反映するには「sysctl -p」コマンドを実行。
● tcpdump コマンド
Linux では tcpdump コマンドを使うことで各プロトコルがどのような通信を行うのかや、不審な通信が行われていないか等を調べ、ネットワークインタフェース上を流れるパケットを監視(パケットキャプチャ)する。
tcpdump はユーザ権限で利用できてしまうとセキュリティ上問題があるため、通常 root 権限でのみ実行。
tcpdump [オプション] [監視対象の条件式]
主要なオプション
・-i 監視するインターフェースを指定
・-n 名前解決を行わずIPアドレスのまま表示
・-X 16進数とASCIIの表でパケットの内容を表示
「監視対象の条件式」部分では以下のような指定を組み合わせて使うことができ、条件に合致したパケットのみが表示。
条件式を何も書かなかった場合は、すべてのパケットが対象になる。
・host 続けてダンプ対象とするホスト(またはIPアドレス)を指定
・port 続けtダンプ対象とするうポート番号を指定
・tcp TCPのパケットを対象とする
・udp UDPパケットを対象とする
・icmp ICMPのパケットを対象とする
・arp ARPのパケットを対象とする
・src 指定した送信元からのパケットを対象とする(続けて送信元をhost、port、IPアドレスなどで指定)
・dst 指定した送信へのパケットを対象とする(続けて送信元をhost、port、IPアドレスなどで指定)
■表示に関するオプションを指定しないで実行したとき、tcpdump の結果は、基本的に以下のような書式で表示される。
送受信時刻 プロトコル 送信元 > 送信先: 内容