Ich versuche, OpenVPN im Bridge-Modus einzurichten, damit ich mehrere Netzwerke im ganzen Land miteinander verbinden kann. Ich habe OpenVPN eingerichtet und das funktioniert gut. Wenn ich versuche, es in ein überbrücktes Netzwerk umzuwandeln, läuft es schief.
Ich folge diesem TutorialHier.
Wenn ich versuche, „bridge-start“ auszuführen, erhalte ich eine Bestätigung, dass das TAP-Gerät geöffnet wurde, aber meine Verbindung zur SSH-Sitzung wird auch getrennt und ich muss den Server neu starten, um erneut eine Verbindung herzustellen.
Sat May 27 02:49:35 2017 TUN/TAP device tap0 opened
Sat May 27 02:49:35 2017 Persist state set to: ON
Sollte ich eine Brücke zu eth0 bauen oder mache ich einfach etwas falsch?
Dies ist mein Bridge-Start-Skript
#!/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
Und meine 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)
Bearbeiten: Ich melde mich über VNC an, um alle Änderungen vorzunehmen.
So sieht mein /etc/network/interfaces derzeit aus. Ich habe alle Adressen/Gateways/Netzmasken von eth0 kopiert, bevor ich Änderungen vorgenommen habe. Ich kann mich nicht per SSH mit dem Server verbinden. Sind meine Einstellungen falsch?
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
Schnittstellen vor jeder Änderung
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
Antwort1
Sie haben die eth_*
Variablen in Ihrem bridge-start
Skript nicht so geändert, dass sie Ihrem tatsächlichen Szenario entsprechen. Wenn Sie Ihr Skript ausführen, wird die IP-Adresse daher von 111.111.111.111 in 192.168.8.4 geändert und Sie verlieren die Verbindung.
Selbst wenn Sie das behoben haben, müssen Sie wahrscheinlich Ihre Routing-Tabelle (insbesondere die Standardroute) neu erstellen.
Wenn möglich, sollten Sie Ihre Bridge einrichten und zum Laufen bringen ( br0
und ), bevor Sie mit OpenVPN fortfahren. Idealerweise bringen Sie die Bridge beim Booten zum Laufen und können dann die Schnittstelle eth0
hinzufügen, wenn Sie mit dem Testen von OpenVPN beginnen.tap0
Eine Netzwerkkonfiguration erfolgreich aus der Ferne zu ändern, ist nicht einfach. Wenn Sie eine Möglichkeit haben, einen KVM anzuschließen, während Sie dies zum Laufen bringen, würde ich empfehlen, die Chance zu nutzen.
Ein Kommentar scheint nach einem Tutorial zu fragen. Anstatt auf eine externe Site zu verweisen, wird hier beschrieben, wie ich auf einem meiner Systeme eine Bridge eingerichtet habe. Dabei wird nicht NetworkManager verwendet, sondern dies ist die Konfiguration in /etc/network/interfaces
.Wenn Sie dies falsch machen, können Sie sich nicht anmelden, daher würde ich Ihnen vorschlagen, einen KVM zu verwenden oder es auf einem lokalen Computer auszuprobieren, um zu bestätigen, dass der Vorgang funktioniert.
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