Я пытаюсь маршрутизировать несколько IP-адресов через один физический сетевой адаптер на моем выделенном сервере для использования с виртуальными машинами Proxmox KVM. У меня есть выделенный сервер, на котором в настоящее время работает Debian 4.4.5-8 с 3 доступными IP-адресами для использования, которые будут отображаться как 176.xxx.xxx.196 (основной), 176.xxx.xxx.198 (в той же подсети как основной) и 5.xxx.xxx.166 (другая подсеть). В настоящее время я пытаюсь маршрутизировать третий IP-адрес с помощью dedi для использования с vps, который я настроил с помощью proxmox v2.x, но мне очень, очень трудно это сделать. Виртуальные интерфейсы, связывающие дополнительные IP-адреса, работают должным образом, что исключает проблемы внешней маршрутизации.
Провайдер предоставил следующую информацию для IP-адресов в основной подсети:
шлюз: 176.xxx.xxx.193
маска сети: 255.255.255.224
трансляция: 176.xxx.xxx.223
А также следующую информацию об IP-адресе во второй подсети:
шлюз: 5.xxx.xxx.161
сетевая маска: 255.255.255.248
трансляция: 5.xxx.xxx.167
Все, что я пробовал с / etc / network / interfaces, либо не работает, либо делает сеть совершенно бесполезной.
Это текущее состояние файла, в котором вторичный IP-адрес работает в той же подсети, а также работает IPv6, но не вторая подсеть.
# Nativen IPv6 Schnittstelle
iface eth0 inet6 manual
# Bridge IPv4 Schnittstelle (176.xxx.xxx.193/27)
auto vmbr0
iface vmbr0 inet static
address 176.xxx.xxx.196
netmask 255.255.255.224
gateway 176.xxx.xxx.193
broadcast 176.xxx.xxx.223
bridge_ports eth0
bridge_stp off
bridge_fd 0
bridge_maxwait 0
post-up ip addr add 176.xxx.xxx.198/27 dev vmbr0
auto vmbr1
iface vmbr1 inet static
address 5.xxx.xxx.166
netmask 255.255.255.248
gateway 5.xxx.xxx.161
broadcast 5.xxx.xxx.167
bridge_ports eth0
bridge_stp off
bridge_fd 0
bridge_maxwait 0
post-up ip addr add 5.xxx.xxx.166/29 dev vmbr1
# Bridge IPv6 Schnittstelle (Reichweite: xxxx:xxxx:xxxx:xxxx:xxxx:xxxx::/64)
iface vmbr0 inet6 static
address xxxx:xxxx:xxxx:xxxx:xxxx:xxxx
netmask 64
up ip -6 route add xxxx:xxxx:xxxx:xxxx:xxxx:xxxx dev vmbr0
down ip -6 route del xxxx:xxxx:xxxx:xxxx:xxxx:xxxx dev vmbr0
up ip -6 route add default via xxxx:xxxx:xxxx:xxxx:xxxx:xxxx dev vmbr0
down ip -6 route del default via xxxx:xxxx:xxxx:xxxx:xxxx:xxxx dev vmbr0
Это было полностью исправлено переустановкой гостевой vm. Провайдер выделенного сервера предоставил каждому гостю MAC-адреса, которые затем назначили ему IP-адрес через dhcp, это решило проблему.
У тебя есть два моста (vmbr0
и vmbr1
) который обе иметь eth0
как участник, так что у вас, по сути, есть один домен уровня 2, который, как я подозреваю, вызовет странности. Вы пытаетесь предоставить виртуальной машине два сетевых адаптера? Если это так, вам лучше предоставить одну сетевую карту и присоединить к ней два адреса внутри виртуальной машины. Хост должен иметь единственный мост, содержащий eth0
.
Поскольку во вторичной подсети уже есть шлюз, хост не должен действовать как один. Не настраивайте адреса или маршруты для дополнительной подсети на узле. В гостевой системе подключите один из дополнительных IP-адресов к его сетевой карте и настройте шлюз по умолчанию на 5.xxx.xxx.161. Хост будет просто действовать как мост второго уровня, позволяющий виртуальной машине достигать шлюза.