CloudStack⑬NATの設定(2日目)
月曜日になりました。
今日こそNATを設定してテンプレを取得したいところです。
#iptables -t nat -A POSTROUTING -s SSVMのリンクローカルアドレス(以後SSVM)-j SNAT --to 新しく作ったインターフェスのIP(以後eth0:1)
# iptables -t nat -A POSTROUTING -s eth0:1 -j SNAT --to GW
#iptables -L -t nat
Chain PREROUTING (policy ACCEPT)target prot opt source destinatination
DNAT all -- anywhere SSVM to:eth0:1
DNAT all -- anywhere eth0:1 to:GW
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
SNAT all -- SSVM anywhere to:eth0:1
SNAT all -- eth0:1 anywhere to:GW
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
マスカレードの設定
#iptables -t nat -A POSTROUTING -s eth0:1/24 -j MASQUERADE
今出来ているNATの設定
#iptables -L -t nat
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
DNAT all -- anywhere SSVM to:eth0:1
DNAT all -- anywhere eth0:1 to:GW
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
SNAT all -- SSVM anywhere to:eth0:1
SNAT all -- eth0:1 anywhere to:GW
MASQUERADE all -- 192.168.2.0/24 anywhere
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
ここでpingを飛ばして接続状況の確認をしてみた
05から eth0:1 GW ● SSVM ×
SSVMまでとどいていない・・・・つまりSSVMからはどこにもとどいていないことになる
せめてリンクローカルでつながっているはずのCPVMにはとどくだろうとおもっていたが、そちらにもとどかない
うーんもしかして別の間違いなのか、またはリンクローカルネットワークを機能させるには何かが必要でそれがないだけなのか、ただ単にNATの設定が不十分であることが原因なのか。3つ考えられるのだけれどな、どうしましょう。
#iptables -t nat -A POSTROUTING -s eth0:1/255.255.255.0 -j MASQUERADE
pingはとびません。
うん、困ったな。
どうしてなのか絵をかいて整理してみよう。
ここでクラウドブリッジに問題があることがわかる。
グローバルアドレスを付与されている方のクラウドブリッジを使って、新しくIPを取る。
#vi ifcfg-cloud0\:1
DEVICE="cloudbr0:1"
BOOTPROTO=none
IPV6INIT=no
IPV6_AUTOCONF=no
NM_CONTROLLED="yes"
ONBOOT=yes
TYPE="Ethernet"
IPADDR=____
NETMASK=255.255.255.0
#service iptables save
iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ]
調べたときに使ったコマンド
tcpdump -i cloudbr1 -nn icmp
tcpdump -i cloudbr10 -nn icmp
tcpdump -i cloudbr0 -nn icmp
ifconfig -a |more
tcpdump -i eth0 arp
brctl show
tcpdump -i cloudbr0 -nn icmp
tcpdump -i cloudbr0 -nn arp
ls
ifconfig -a
ifdown eth0;1