Я пытаюсь настроить OpenVPN в режиме моста, чтобы я мог связать несколько сетей по всей стране. У меня есть настройка OpenVPN, и она работает отлично, но когда я пытаюсь превратить ее в мостовую сеть, все идет не так.
Я следую этому руководствуздесь.
Когда я пытаюсь запустить bridge-start, я получаю подтверждение того, что устройство tap было открыто, но я также отключаюсь от сеанса SSH и мне приходится перезагружать сервер, чтобы подключиться снова.
Sat May 27 02:49:35 2017 TUN/TAP device tap0 opened
Sat May 27 02:49:35 2017 Persist state set to: ON
Мне следует подключиться к eth0 или я просто что-то делаю не так?
Это мой сценарий запуска моста.
#!/bin/bash
#################################
# Set up Ethernet bridge on Linux
# Requires: bridge-utils
#################################
# Define Bridge Interface
br="br0"
# Define list of TAP interfaces to be bridged,
# for example tap="tap0 tap1 tap2".
tap="tap0"
# Define physical ethernet interface to be bridged
# with TAP interface(s) above.
eth="eth0"
eth_ip="192.168.8.4"
eth_netmask="255.255.255.0"
eth_broadcast="192.168.8.255"
for t in $tap; do
openvpn --mktun --dev $t
done
brctl addbr $br
brctl addif $br $eth
for t in $tap; do
brctl addif $br $t
done
for t in $tap; do
ifconfig $t 0.0.0.0 promisc up
done
ifconfig $eth 0.0.0.0 promisc up
ifconfig $br $eth_ip netmask $eth_netmask broadcast $eth_broadcast
И мой ifconfig
eth0 Link encap:Ethernet HWaddr 00:16:3c:5d:7a:a5
inet addr:111.111.111.111 Bcast:111.111.111.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:186590 errors:0 dropped:348 overruns:0 frame:0
TX packets:136 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:11311181 (10.7 MiB) TX bytes:20623 (20.1 KiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
tap0 Link encap:Ethernet HWaddr 7e:9f:bc:8a:06:f7
BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
Редактировать: Я вхожу через VNC, чтобы внести все изменения.
Вот как выглядит мой /etc/network/interfaces в настоящее время, я скопировал все адреса/шлюзы/маски сети с eth0 до того, как внес изменения. Я не могу подключиться к серверу по ssh, может у меня неправильные настройки?
auto eth0
allow-hotplug eth0
iface eth0 inet manual
auto br0
iface br0 inet static
address 111.191.104.233
gateway 111.191.104.1
netmask 255.255.255.0
bridge_ports eth0
bridge_fd 0
bridge_maxwait 0
интерфейсы до внесения каких-либо изменений
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 111.191.104.233
gateway 111.191.104.1
netmask 255.255.255.0
dns-nameservers 8.8.8.8 8.8.4.4
решение1
Вы не изменили eth_*
переменные в вашем bridge-start
скрипте в соответствии с вашим реальным сценарием. В результате, когда вы запускаете ваш скрипт, IP-адрес меняется с 111.111.111.111 на 192.168.8.4, и вы теряете соединение.
Даже если вы это исправите, вам, вероятно, придется заново создать таблицу маршрутизации (в частности, маршрут по умолчанию).
Если возможно, настройте и запустите свой мост ( br0
и eth0
), прежде чем продолжать работу с OpenVPN. В идеале вам следует запустить мост во время загрузки, а затем добавить интерфейс, tap0
когда вы начнете тестировать OpenVPN.
Успешное изменение конфигурации сети удаленно — непростая задача. Если у вас есть возможность подключить KVM, пока вы это делаете, я бы рекомендовал вам воспользоваться этим шансом.
Кажется, комментарий просит руководство. Вместо того, чтобы указывать на что-то другое, вот как я настроил мост на одной из своих систем. Он не использует NetworkManager, но это конфигурация в /etc/network/interfaces
.Если вы сделаете это неправильно, вы не сможете войти в систему., поэтому я бы посоветовал вам использовать KVM или попробовать его на локальной машине, чтобы убедиться, что процесс работает.
allow-hotplug eth0
iface eth0 inet manual
auto br0
iface br0 inet static ← ASSUMES STATIC IP ADDR
address 111.111.111.111
netmask 255.255.255.0
gateway 111.111.111.254 ← FIX ME BEFORE TRYING THIS
bridge_ports eth0
bridge_fd 0
bridge_maxwait 0