openvpn 브리지 탭에서 이더넷으로

openvpn 브리지 탭에서 이더넷으로

전국의 몇몇 네트워크를 함께 연결할 수 있도록 브리지 모드에서 openvpn을 설정하려고 합니다. 나는 openvpn 설정을 가지고 있고 그것은 잘 작동합니다. 그것을 브리지 네트워크로 바꾸려고 할 때 상황이 잘못된 방향으로 진행됩니다.

나는 이 튜토리얼을 따르고 있다여기.

브리지 시작을 실행하려고 하면 탭 장치가 열렸다는 확인 메시지가 표시되지만 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로 변경되고 연결이 끊어집니다.

문제를 해결한 경우에도 라우팅 테이블(특히 기본 경로)을 다시 만들어야 할 수 있습니다.

가능하다면 openvpn을 사용하기 전에 브리지를 설정하고 작동시키십시오( br0및 ). eth0이상적으로는 부팅 시 브리지를 실행한 다음 tap0openvpn 테스트를 시작할 때 인터페이스를 추가할 수 있습니다.

원격으로 네트워크 구성을 성공적으로 변경하는 것은 쉽지 않습니다. 이 작업을 수행하는 동안 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

관련 정보