スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

iproute2のポリシールーティングで通信を受けたNICによってルーティングを変える

下の図みたいな構成でデフォルトゲートウェイはR2なんだけどeth0で通信を受けた場合はR1にルーティングしたいという場合、iproute2で複数ルーティングテーブルを使うことによって実現する。

iproute2

■追加するルーティングテーブルのIDと名前

【/etc/iproute2/rt_tables】

追記↓

100 r1e

■デフォルトゲートウェイの設定

【/etc/sysconfig/network-scripts/ifcfg-eth1】

追記↓

GATEWAY=10.2.2.1

■eth0から送出のルーティング設定

【/etc/sysconfig/network-scripts/route-eth0】

10.1.1.0/24 dev eth0 src 10.1.1.2 table r1e
default via 10.1.1.1 table r1e

【/etc/sysconfig/network-scripts/rule-eth0】

from 10.1.1.2 table r1e

■反映

# /etc/init.d/network restart

通常のstaticルーティングと組み合わせても大丈夫で、例えば、10.3.3.0/24宛てはeth0から送出してネクストホップ10.1.1.1みたいなルーティングを追加するならroute-eth0先頭に

10.3.3.0/24 via 10.1.1.1

を追記すればいい。

■ルーティングテーブルの一覧

# ip rule

0: from all lookup local
32765: from 10.1.1.2 lookup r1e
32766: from all lookup main
32767: from all lookup default

一番左が優先度(小さい方が優先)、一番右がテーブル名

■各ルーティングテーブルの内容

# ip route show table テーブル名

今回追加したテーブルの内容は

# ip route show table r1e

10.1.1.0/24 dev eth0 scope link src 10.1.1.2
default via 10.1.1.1 dev eth0

この記事のトラックバックURL

http://ysmt.blog21.fc2.com/tb.php/354-2b96b450

コメント

コメントする

管理者にだけ表示を許可する

Template Designed by DW99

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。