俺のひとり言

Icon

一人外人の世界観、価値観、恋愛観の適当話

複数NICに対し、複数プロバイダのルーティング設定


今回は2枚のNIC+2プロバイダの例。。。

イメージ:

各項目値:
eth0のIP:192.168.1.10
eth0のゲートウェアIP:192.168.1.1
eth0のネットワークIP:192.168.1.0/24

eth1のIP:192.168.2.10
eth1のゲートウェアIP:192.168.2.1
eth1のネットワークIP:192.168.2.0/24

Provider 1のルーティングテーブル名:gateway1
Provider 2のルーティングテーブル名:gateway2

まずはルーティングテーブルを追加(※net.ipv4.ip_forwardの設定も忘れず)

[root@centos ~]# vi /etc/iproute2/rt_tables
200     gateway1
201     gateway2

[root@centos ~]# vi /etc/sysctl.conf
net.ipv4.ip_forward = 0
↓
net.ipv4.ip_forward = 1

後は↓のコマンドで設定する(見りゃわかるの設定だから、説明なし(^^;))

[root@centos ~]# ip route add 192.168.1.0/24 dev eth0 src 192.168.1.10 table gateway1
[root@centos ~]# ip route add default via 192.168.1.1 table gateway1
[root@centos ~]# ip route add 192.168.2.0/24 dev eth1 src 192.168.2.10 table gateway2
[root@centos ~]# ip route add default via 192.168.2.1 table gateway2
[root@centos ~]# ip rule add from 192.168.1.10 table gateway1
[root@centos ~]# ip rule add from 192.168.2.10 table gateway2

↑だと、network再起動をかけると消えるので、下のようにshで自動実行させる

[root@centos ~]# vi /etc/sysconfig/network-scripts/ifup-local
#!/bin/sh

DEVICE=$1

IF1=eth0
IF2=eth1
IF1_IP=192.168.1.10
IF2_IP=192.168.2.10
GATEWAY1_IP=192.168.1.1
GATEWAY2_IP=192.168.2.1
IF1_NET=192.168.1.0/24
IF2_NET=192.168.2.0/24
ROUTING1_NAME=gateway1
ROUTING2_NAME=gateway2

case in
$IF1)
ip route add $IF1_NET dev $IF1 src $IF1_IP table $ROUTING1_NAME
ip route add default via $GATEWAY1_IP table $ROUTING1_NAME
ip rule add from $IF1_IP table $ROUTING1_NAME
;;

$IF2)
ip route add $IF2_NET dev $IF2 src $IF2_IP table $ROUTING2_NAME
ip route add default via $GATEWAY2_IP table $ROUTING2_NAME
ip rule add from $IF2_IP table $ROUTING2_NAME
;;
esac

後は実行権限を与えよう。。。

[root@centos ~]# chmod +x /etc/sysconfig/network-scripts/ifup-local

Network再起動後~設定確認

[root@centos ~]# ip route show
192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.10 
192.168.2.0/24 dev eth1  proto kernel  scope link  src 192.168.2.10
169.254.0.0/16 dev eth1  scope link 
default via 192.168.1.1 dev eth0 

以上。。。

参考文献:
http://www.linux.or.jp/JF/JFdocs/Adv-Routing-HOWTO/lartc.rpdb.multiple-links.html#AEN288
http://www.hoster.jp/tech/multihomeing
http://www6.ocn.ne.jp/~bonz/tune/redhat62.html

Category: NW関連, トラブルシューティング

Tagged: ,

Leave a Reply

 

 


俺のひとり言トップ | Xperia云々 | 俺のアンケート | 俺の独り言 | 俺のツール | 俺のつぶやき | Linuxサーバ構築 | Windowsサーバ構築 | シンクライアント