■
OpenVPNでトンネルが出来た。そのトンネル経由で他のセグメントのマシンにアクセスする。
トンネルで使っているバーチャルなIPのままではそのパケットをルータがどう扱うべきかわからないので破棄されるはずだ。これをうまく処理するために今回はIPマスカレードを使うことにする。
まずVineLinuxサーバーのIPフォワーディングをONにする。デフォルトではオフになっている。
cat /proc/sys/net/ipv4/ip_forward
で0となっていればオフ。1でオン。
この値はリブートすると0(オフ)になってしまうので、
echo "1" > /proc/sys/net/ipv4/ip_forward
を/etc/rc.d/rc.localに追加しよう!
さらに、iptable_natをロードする。
modprobe iptable_nat
さらに、指定したローカルアドレス(192.168.100.0/24)がサーバに入ってきたら、マスカレードして出元がeth0であるかのようなパケットを飛ばすようにする。そうするとIPはeth0に割当てられているものに変換される。
iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o eth0 -j MASQUERADE