web-dev-qa-db-ja.com

結合されたインターフェースを持つ複数のIPアドレス

2つのイーサネットポートを持つサーバーがあり、/etc/network/interfacesの次の構成でそれらを結合しました。

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet manual
bond-master bond0

auto eth1
iface eth1 inet manual
bond-master bond0

auto bond0
iface bond0 inet static
address 192.168.0.300
gateway 192.168.0.1
netmask 255.255.255.0
dns-nameservers 8.8.8.8 8.8.4.4
bond-mode balance-rr
bond-miimon 100
bond-slaves eth0 eth1

そのため、現在、すべての接続はbond0を介してルーティングされます。 bond1などの別のIPアドレスで動作できる192.168.0.301などの別のインターフェイスが必要です。

eth0インターフェースだけでこれを実現するには、以下を追加する必要があることを知っています。

auto eth0:0
iface eth0:0 inet static
(and so on)

しかし、どのようにネットワークボンドでこれを行うのですか?おそらくbond0:0bond0:1の線に沿って何か?またはbond0およびbond1ですが、次のような合計4つのネットワークインターフェイスを作成します。eth0:0eth1:0およびeth0:1およびeth1:1 2つの別々の債券のために?ちょっとわかりにくいですが、どんな助けでも感謝します!

6
Michael Morrow

私自身がこの問題を抱えており、どこにも情報がほとんどないため、/ etc/network/interfacesファイルの「正しい」解決策を以下に示します。

auto bond0
iface bond0 inet static
    address 192.168.0.5
    netmask 255.255.255.0
    gateway 192.168.0.1
    bond-mode 802.3ad
    bond-miimon 100
    bond-updelay 200
    bond-downdelay 200
    bond-lacp-rate 1
    bond-slaves eth0 eth1

auto bond0:1
iface bond0:1 inet static
    address 192.168.10.160
    netmask 255.255.255.0

Eth0のような通常のインターフェースとほぼ同じように機能しますが、bond構成を繰り返すことはできません-bond0構成にのみあるべきです。このように、bond0:2、bond0:3など、必要なだけIPアドレスを追加できます。

IPv6アドレスも追加したい場合、これは(例として)追加する必要があるため、少し異なります。

iface bond0 inet6 static
    address 2eee:354:3a3::745
    netmask 64
    gateway 2eee:354:3a3::1

IPv6ではbond0:1または同様の回避策は必要ありません。すべてのアドレスにbond0を使用してください。 2番目のIPv4アドレスのように、IPv4アドレスの結合設定を使用します。また、追加のIPv6アドレスに対してゲートウェイ部分を繰り返す必要はありません。2番目のIPv6アドレスにaddressおよびnetmaskを使用するだけです。

Interfacesファイルを変更したら、次のコマンドを実行してネットワークを完全に再起動し、これらの変更をロードする必要があります。

ip address flush eth0
ip address flush eth1
systemctl restart networking

これにより、eth0およびeth1からすべてのIPアドレスが削除され、新しい構成でネットワークが再起動します。再起動する前にネットワークを完全にオフにする必要があるため、すべての接続が失われるため、マシンにローカルでログインしていることを確認してください。

2
iquito

CentOSで必要なセットアップを使用しています。 CentOSでどのように機能するかを示すだけで、ubuntu configに変換する方法を理解できると思います。私のセットアップは次のようなものです。

ifcfg-eth4

DEVICE=eth4
BOOTPROTO=none
HWADDR=00:0F:FE:E4:A4:CF
ONBOOT=yes
HOTPLUG=no
SLAVE=yes
MASTER=bond2

ifcfg-bond2

DEVICE=bond2
BOOTPROTO=none
IPADDR=192.168.20.1
NETMASK=255.255.0.0
ONBOOT=yes
TYPE=bonding
MASTER=yes
BONDING_OPTS="miimon=100 mode=1" 

ifcfg-bond2:1

DEVICE=bond2:1
BOOTPROTO=none
IPADDR=192.168.41.1
NETMASK=255.255.0.0
ONBOOT=yes
TYPE=bonding
MASTER=yes
BONDING_OPTS="miimon=100 mode=1" 

だから私はあなたの場合にそのようにしてみます:

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet manual
bond-master bond0

auto eth1
iface eth1 inet manual
bond-master bond0

auto bond0
iface bond0 inet static
address 192.168.0.300
gateway 192.168.0.1
netmask 255.255.255.0
dns-nameservers 8.8.8.8 8.8.4.4
bond-mode balance-rr
bond-miimon 100
bond-slaves eth0 eth1

auto bond0:1
iface bond0 inet static
address 192.168.1.300
gateway 192.168.1.1
netmask 255.255.255.0
dns-nameservers 8.8.8.8 8.8.4.4
bond-mode balance-rr
bond-miimon 100
bond-slaves eth0 eth1

やってみて。

0
nobody