Мы пытаемся настроить систему VPN Roadwarrior с помощью openvpn. Мы хотим, чтобы люди могли подключаться к нашей сети через openvpn. И мы хотим, чтобы они могли видеть машины в нашей сети и подключаться к ним. Итак, решение - это мост vpn, как мы видим.
У меня нет большого опыта работы с сетевыми средами. Я просматриваю как ubuntu (на котором мы построили сервер openvpn), так и руководства по openvpn. Им обоим не хватает многих аспектов.
https://help.ubuntu.com/10.10/serverguide/C/openvpn.html
Когда я устанавливаю интерфейс моста с помощью сценария запуска моста, который является частью openvpn, моя сеть отключается, что позволяет мне пинговать внутри моей сети. Я настроил переадресацию порта на порт 1194 моего openvpn-сервера, который работает, пока я не установил интерфейс моста. После включения моста моя машина потеряла связь с внешней сетью. Я уверен, что мне что-то не хватает.
Я положил свой ifconfig
и netstat -rn
выходы до и после установки моста. И мой файл конфигурации сервера и скрипты ниже.
eth1 Link encap:Ethernet HWaddr 52:54:00:57:63:6e
inet addr:192.168.22.230 Bcast:192.168.22.255 Mask:255.255.255.0
inet6 addr: fe80::5054:ff:fe57:636e/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:4857 errors:0 dropped:0 overruns:0 frame:0
TX packets:3199 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:518272 (518.2 KB) TX bytes:430178 (430.1 KB)
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:16436 Metric:1
RX packets:21 errors:0 dropped:0 overruns:0 frame:0
TX packets:21 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:1804 (1.8 KB) TX bytes:1804 (1.8 KB)
192.168.22.0 / 0.0.0.0 / 255.255.255.0 / U 0 0 0 / eth1
0.0.0.0 / 192.168.22.1 / 0.0.0.0 / UG 0 0 0 / eth1
br0 Link encap:Ethernet HWaddr 52:54:00:57:63:6e
inet addr:192.168.22.230 Bcast:192.168.22.255 Mask:255.255.255.0
inet6 addr: fe80::5054:ff:fe57:636e/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:256 errors:0 dropped:0 overruns:0 frame:0
TX packets:32 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:43790 (43.7 KB) TX bytes:2328 (2.3 KB)
eth1 Link encap:Ethernet HWaddr 52:54:00:57:63:6e
inet6 addr: fe80::5054:ff:fe57:636e/64 Scope:Link
UP BROADCAST RUNNING PROMISC MULTICAST MTU:1500 Metric:1
RX packets:5691 errors:0 dropped:0 overruns:0 frame:0
TX packets:3508 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:622570 (622.5 KB) TX bytes:470324 (470.3 KB)
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:16436 Metric:1
RX packets:36 errors:0 dropped:0 overruns:0 frame:0
TX packets:36 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:3980 (3.9 KB) TX bytes:3980 (3.9 KB)
tap0 Link encap:Ethernet HWaddr 7e:3a:03:48:ad:29
inet6 addr: fe80::7c3a:3ff:fe48:ad29/64 Scope:Link
UP BROADCAST RUNNING PROMISC MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:243 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
192.168.22.0 / 0.0.0.0 / 255.255.255.0 / U 0 0 0 / br0
(Я плохо знаю эту таблицу. Но я не смог преодолеть эту таблицу или сделать ее функциональной, добавив маршруты.)
br="br0"
tap="tap0"
eth="eth1"
eth_ip="192.168.22.230"
eth_netmask="255.255.255.0"
eth_broadcast="192.168.22.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
Проблема в том, что когда сценарий запуска отключает eth0, он уничтожает ваш маршрут шлюза по умолчанию. Когда сценарий вызывает интерфейсы, вы не используете DHCP, вы устанавливаете IP-адреса и подсети вручную. Обычно вы получаете маршрут от DHCP без моста. Вы можете либо закомментировать части скрипта, чтобы br0 получал IP-адрес eth0 (и, следовательно, маршрут) от DHCP, либо вы можете добавить строку, чтобы вручную добавить маршрут в конце скрипта:
route add default gw 192.168.22.1
Почему вы не используете / etc / network / interfaces для архивации?
пример:
iface br0 inet static
bridge_ports eth0 tap0
address 192.168.1.2
broadcast 192.168.1.255
netmask 255.255.255.0
gateway 192.168.1.1
pre-up openvpn --mktun --dev tap0