Назад | Перейти на главную страницу

Потеряно соединение с сервером после добавления нового моста в конфигурацию сети

На сервере Proxmox (Debian) я изменил свою сетевую конфигурацию следующим образом:

source /etc/network/interfaces.d/*

auto lo
iface lo inet loopback

auto enp0s31f6
iface enp0s31f6 inet static
        address  88.99.69.241
        netmask  255.255.255.192
        gateway  88.99.69.193
        up route add -net 88.99.69.192 netmask 255.255.255.192 gw 88.99.69.193 dev enp0s31f6
        post-up echo 1 > /proc/sys/net/ipv4/conf/enp0s31f6/proxy_arp
# route 88.99.69.192/26 via 88.99.69.193

auto vmbr1
iface vmbr1 inet static
        address  10.3.5.1
        netmask  255.255.255.0
        bridge-ports none
        bridge-stp off
        bridge-fd 0

к этому:

source /etc/network/interfaces.d/*

auto lo
iface lo inet loopback

auto enp0s31f6
iface enp0s31f6 inet static
        address  66.xx.xx.241
        netmask  255.255.255.192
        gateway  66.xx.xx.193
        up route add -net 66.xx.xx.192 netmask 255.255.255.192 gw 66.xx.xx.193 dev enp0s31f6
        post-up echo 1 > /proc/sys/net/ipv4/conf/enp0s31f6/proxy_arp
# route 66.xx.xx.192/26 via 66.xx.xx.193

auto vmbr0
iface vmbr0 inet static
       address 66.xx.xx.241
       netmask 255.255.255.255
       pointopoint 66.xx.xx.193
       gateway 66.xx.xx.193
       bridge_ports enp0s31f6
       bridge_stp off
       bridge_fd 1
       bridge_hello 2
       bridge_maxage 12

auto vmbr1
iface vmbr1 inet static
        address  10.3.5.1
        netmask  255.255.255.0
        bridge-ports none
        bridge-stp off
        bridge-fd 0

Мой сервер находится на Hetzner, и я хочу связать свой дополнительный IP-адрес с одной из моих виртуальных машин.

После перезагрузки я не могу пинговать 66.xx.xx.241, может кто-нибудь объяснить мне, почему я больше не могу подключиться ?. В мостовой сети gw должен быть определен в vmbr0 ?.

Я изменил конфигурацию сети на основе этот учебник от Хетцнера:

Да, это довольно тривиально и описано во множестве мест: члены интерфейса моста не должны иметь IP-адресов, а скорее должен сам мост.

Вы путаете основной интерфейс и мостовой интерфейс. При использовании мостового интерфейса этот интерфейс должен получать IP-адрес, а основной интерфейс становится мостовым, что означает, что он также не может иметь этот адрес.

Итак, у вас есть первый интерфейс с именем enp0s31f6. Этот интерфейс подключен к вашему мосту, поэтому он настраивается не напрямую, а в конфигурации моста: ключевое слово manual для этого используется:

auto enp0s31f6
    iface enp0s31f6 inet manual

Затем при настройке моста:

auto vmbr0
iface vmbr0 inet static
    address 66.xx.xx.241
    netmask 255.255.255.255
    pointopoint 66.xx.xx.193
    gateway 66.xx.xx.193
    bridge_ports enp0s31f6
    bridge_stp off
    bridge_fd 1
    bridge_hello 2
    bridge_maxage 12

У вас не может быть двух интерфейсов с одним и тем же IP-адресом.

Во-вторых, ты route объявление недействительно, поскольку оно создает маршрут, который уже существует в соответствии с конфигурацией адреса и маски сети. Действительно, сеть 66.xx.xx.192 / 26 подключена напрямую (уровень 2, Ethernet и разрешение ARP) и не требует дополнительной настройки маршрута (уровень 3).

По поводу маршрутизации, поскольку пакеты в реальном мире перехватываются вашим enp0s31f6 интерфейс, но передается на ваш vmbr0, вам нужно будет написать вам следующую строку /etc/sysctl.conf файл :

net.ipv4.ip_forward=1

Вам нужно будет запустить команду sysctl -p для принудительного ввода этой новой строки в учетную запись напрямую (без ожидания следующей перезагрузки).

Я не уверен, что вам нужно активировать прокси-сервер arp (строка post-up echo 1 > /proc/sys/net/ipv4/conf/enp0s31f6/proxy_arp). По сути, то, что вы делаете, - это прокси ARP; однако это может быть неявно реализовано pointopoint линия.

Сообщите нам, поможет ли это решить вашу проблему или нет;

РЕДАКТИРОВАТЬ. По-прежнему можно использовать режим моста. Вы настраиваете внешний интерфейс, как обычно, и мост, имеющий IP-адрес в диапазоне 1918. И тогда ip_forward = 1.