LXCで外部と通信する為のブリッジ設定です。
最低限これで通信に問題はなし。
■bridge-utilsパッケージ導入
標準ではbrctlコマンドが入っていない為、bridge-utilsパッケージ導入
# brctl
The program 'brctl' is currently not installed. You can install it by typing:
apt-get install bridge-utils
# apt-get install bridge-utils
■eth0あたりの設定にブリッジ設定を追加
/etc/network/if-up.d/brctl.shスクリプトを作成
内容はこんな感じ
#!/bin/sh
brctl addbr br0
brctl setfd br0 0
ifconfig br0 <ブリッジインターフェイスにつけるIP> promisc up
brctl addif br0 eth0
ifconfig eth0 0.0.0.0 up
route add -net default gw <デフォルトゲートウェイのIP> br0
/etc/network/interfacesに上記スクリプトを登録
Allow-Hotplug設定にしないとうまくいきません。
auto eth0
allow-hotplug eth0
iface eth0 inet static
address 192.168.73.20
network 192.168.73.0
netmask 255.255.255.0
broadcast 192.168.73.255
gateway 192.168.73.1
dns-nameservers 192.168.73.1
post-up /etc/network/if-up.d/brctl.sh
インターフェイスを再起動後、brctlコマンドで確認。
# brctl show
bridge name bridge id STP enabled interfaces
br0 8000.0010dc94d655 no eth0
後は忘れてはいけないのが
# echo 1 > /proc/sys/net/ipv4/ip_forward
/etc/sysctl.confにでも設定を入れておきましょう。
# Uncomment the next line to enable packet forwarding for IPv4
net.ipv4.ip_forward=1