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

Мостовые интерфейсы для openvpn на сервере ubuntu

Я использую этот скрипт для создания моста для openvpn:

#!/bin/bash

br="br0"

tap="tap0"

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

route add default gw 192.168.8.1

Я запустил этот скрипт как выскочку на Ubuntu. Задание upstart будет ждать, пока не появится интерфейс "eth0" (у него уже будет IP-адрес, network/interfaces сценарий присвоил это). Но когда запускается приведенный выше скрипт, интерфейс eth0 отключается, теряет свой IP и добавляется к мосту. Поэтому вместо того, чтобы использовать приведенный выше сценарий в качестве upsatrt-задания, я хочу добавить его в network/interfaces сценарий. Как это сделать?

Такой раздел должен быть довольно близок к тому, что вы хотите. REF

auto br0
iface br0 inet static
        pre-up openvpn --mktun --dev br0
        post-down openvpn --rmtun --dev br0
        bridge_ports br0 eth0
        address 192.168.8.4
        netmask 255.255.255.0
        gateway 192.168.8.1