Wlan과 Tun을 바인딩하는 방법

Wlan과 Tun을 바인딩하는 방법

컴퓨터에서 eth와 wlan을 "바인딩"하려면 ip_forwarding설정 1을 사용하십시오.

VPN 서버에 액세스하기 위해 이러한 구성을 "라우팅/바인딩"하는 방법~에서 wlan, 통과하다 eth?

안나 클라이언트<-->wifi (wlan:13.37.42.1) [컴퓨터] eth0 <-- VPN --> 서버 3.1.170.110

현재는 작동하지 않습니다. 무슨 일이 일어나는지: Anna가 핑을 보내고 다음을 얻습니다.

  • 핑 13.37.42.1 => 확인
  • 핑 3.1.170.110 => 확인
  • 핑 8.8.8.8 => 실패(GoogleDNS)
  • ping anydomain.any => 실패(실제로 DNS에 액세스할 수 없기 때문에)
  • 다른 IP에 대한 핑 => 실패

____VPN 사용 시 라우팅존재하다:

Destination     Passerelle      Genmask         Indic Metric Ref    Use Iface
default         10.8.0.77       128.0.0.0       UG    0      0        0 tun0
default         192.168.0.1     0.0.0.0         UG    0      0        0 eth0
10.8.0.1        10.8.0.77       255.255.255.255 UGH   0      0        0 tun0
10.8.0.77       *               255.255.255.255 UH    0      0        0 tun0
13.37.42.0      *               255.255.255.0   U     0      0        0 wlan0
ns350510.ip-3-1  192.168.0.1     255.255.255.255 UGH   0      0        0 eth0
128.0.0.0       10.8.0.77       128.0.0.0       UG    0      0        0 tun0
link-local      *               255.255.0.0     U     1000   0        0 eth0
192.168.0.0     *               255.255.254.0   U     0      0        0 eth0

___ 라우팅(VPN 사용 시)떠나다

Destination     Passerelle      Genmask         Indic Metric Ref    Use Iface
default         192.168.0.1     0.0.0.0         UG    0      0        0 eth0
13.37.42.0      *               255.255.255.0   U     0      0        0 wlan0
link-local      *               255.255.0.0     U     1000   0        0 eth0
192.168.0.0     *               255.255.254.0   U     0      0        0 eth0

__ 컴퓨터의 IPtables(WIFI AP 및 VPN 서버에 대한 링크 제공):

 # Generated by iptables-save v1.4.21 
    *mangle
    :PREROUTING ACCEPT [7471:1066114]
    :INPUT ACCEPT [5960:830272]
    :FORWARD ACCEPT [1339:216774]
    :OUTPUT ACCEPT [717:92366]
    :POSTROUTING ACCEPT [2116:318321]
    :internet - [0:0]
    -A PREROUTING -j internet
    -A internet -m mac --mac-source 60:F8:4D:BE:43:AE -j RETURN
    -A internet -j MARK --set-xmark 0x3e7/0xffffffff
    COMMIT
    # Completed 
    # Generated by iptables-save v1.4.21 
    *nat
    :PREROUTING ACCEPT [1710:298954]
    :INPUT ACCEPT [1480:280336]
    :OUTPUT ACCEPT [28:4162]
    :POSTROUTING ACCEPT [86:6162]
    -A PREROUTING -i wlan0 -p tcp -m mark --mark 0x3e7 -m tcp --dport 80 -j DNAT --to-destination 13.37.42.1:80
    -A PREROUTING -i wlan0 -p tcp -m mark --mark 0x3e7 -m tcp --dport 443 -m conntrack --ctstate NEW -j DNAT --to-destination 13.37.42.1:80
    -A POSTROUTING -o eth0 -j MASQUERADE
    -A POSTROUTING -o wlan0 -j MASQUERADE
    COMMIT
    # Completed 
    # Generated by iptables-save v1.4.21 
    *filter
    :INPUT ACCEPT [6041:840617]
    :FORWARD ACCEPT [380:110945]
    :OUTPUT ACCEPT [753:102159]
    -A FORWARD -i wlan0 -j ACCEPT
    COMMIT
    # Completed 

답변1

and 를 바인딩하지 않는 것처럼 실제로 bind eth0and 를 바인딩하지 않습니다 . 실제로 변경 사항을 통해 영구적으로 또는 -ing 1을 사용하여 일시적으로 패킷이 한 인터페이스에서 다른 인터페이스로 전달되도록 설정할 수 있습니다 .tun0wlan0tun0ip_forwarding=1/etc/sysctl.confecho/proc/sys/kernel/net/ipv4/ip_forward

누락된 유일한 것은 패킷 헤더의 변경입니다. 그대로 전달하도록 두면 패킷은 종료된 인터페이스의 IP가 아닌 종료된 컴퓨터의 원래 IP를 전달합니다. 시스템( wlan0이 경우). 따라서 그들이 집으로 가는 길을 찾을 수 있도록 iptables그들이 오는 것처럼 보이게 해야 합니다. 다시 라우팅되어야 하는 연결 과 그렇지 않은 연결을 자동으로 기억합니다.wlan0iptablestun0

       iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE

편집하다:

eth0귀하는 컴퓨터를 과(와) 동시에 연결 상태를 유지하려고 합니다 wlan0. 내가 당신에게 주는 지침은 당신이오직을 통해 연결하세요 wlan0. 이더넷 연결을 끊고 openvpn을 다시 시작한 후 실제로 작동하는지 확인해야 합니다.

eth0wlan0동시에 두 연결을 유지하고 OpenVPN 인스턴스를 시작하고 OpenVPN을 통해 wlan0LAN 트래픽을 라우팅합니다 .tun0할 수 있는가능하지만 다른 기술이 필요합니다. 이에 대해 다른 질문을 해보실 것을 제안합니다.

관련 정보