web-dev-qa-db-ja.com

UbuntuのブリッジインターフェースでIPエイリアスを設定する方法

Ubuntuのブリッジ(br0)デバイスにIPエイリアスを設定するにはどうすればよいですか?

Br0が表示されるのを待ってから、

/sbin/ifconfig br0:0 192.168.10.1 netmask 255.255.255.0 

その後、正常に動作します。

ただし、/ etc/network/interfacesファイルに以下を追加すると、機能せず、ネットワークの起動に失敗します。

auto br0:0
iface br0:0 inet static
   address 192.168.10.1
   netmask 255.255.255.0 

現時点では、/ etc/network/if-up.d/bridge_aliasに次のように実行するスクリプトがあります。

#!/bin/bash

if [ "${LOGICAL}" == "br0" ] && [ "${PHASE}" = "post-up" ]; then
        echo -n "Starting br0:0 ... "
        /sbin/ifconfig br0:0 192.168.10.2 netmask 255.255.255.0
        echo "Done!"
fi

ただし、OSネットワーク構成ファイルを使用するだけで、これを行う正しい方法は何ですか?

2

それを行う唯一の方法は、ifconfig(または、おそらくip addr addですが、ブリッジに対してチェックしていません)からです。 if-up.dは問題ありませんが、次のようなインターフェイスでポストアップを使用することをお勧めします。

 auto br0:0 
 iface br0:0 inet static 
アドレス192.168.10.1 
ネットマスク255.255.255.0 
 post-up/sbin/ifconfig br0:0192.168.10.2ネットマスク255.255.255.0 

ポストアップは何度でも繰り返すことができます。

4
rlex

これが私が使っているもので、Debian8とUbuntu16.03で動作します。

auto lo
iface lo inet loopback

auto br1 
iface br1 inet static
    bridge_ports eth1 
    address  172.17.17.1
    netmask  255.255.255.0
    network  172.17.17.0
    broadcast 172.17.17.255
    post-up /usr/sbin/dhcpd 

auto br1:1 
iface br1:1 inet static
    address 172.17.17.2
    netmask  255.255.255.0
    network  172.17.17.0
    broadcast 172.17.17.255
2
Robin Hammond