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

Клиент OpenVPN подключается, но не может получить доступ к Интернету

Я устанавливаю сервер Openvpn в системе centos, и я могу заставить клиента подключиться (osx), но не могу получить доступ к Интернету или даже локальной сети. Я подумал, может быть, DNS, но не мог получить доступ к каким-либо сайтам через IP. Любая помощь будет оценена. Я перечислю свои файлы конфигурации ниже.

server.conf:::

port 1194 #- port
proto udp #- protocol
dev tun
tun-mtu 1500
tun-mtu-extra 32
mssfix 1450
reneg-sec 0
ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt
cert /etc/openvpn/easy-rsa/2.0/keys/server.crt
key /etc/openvpn/easy-rsa/2.0/keys/server.key
dh /etc/openvpn/easy-rsa/2.0/keys/dh2048.pem
plugin /usr/lib64/openvpn/plugins/openvpn-plugin-auth-pam.so /etc/pam.d/login #- Comment this line if you are using FreeRADIUS
#plugin /etc/openvpn/radiusplugin.so /etc/openvpn/radiusplugin.cnf #- Uncomment this line if you are using FreeRADIUS
client-cert-not-required
username-as-common-name
server 10.8.0.0 255.255.255.0
push "redirect-gateway def1"
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
keepalive 5 30
comp-lzo
persist-key
persist-tun
status 1194.log
verb 3


client.conf:::

client
dev tun
proto udp
remote My server IP 1194 # - Your server IP and OpenVPN Port
resolv-retry infinite
nobind
tun-mtu 1500
persist-key
persist-tun
ca ca.crt
cert client1.crt
key client1.key
auth-user-pass
comp-lzo
verb 3


ifconfig (client)::

    lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
    options=3<RXCSUM,TXCSUM>
    inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1 
    inet 127.0.0.1 netmask 0xff000000 
    inet6 ::1 prefixlen 128 
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
stf0: flags=0<> mtu 1280
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    ether 10:40:f3:88:27:6c 
    inet6 fe80::1240:f3ff:fe88:276c%en0 prefixlen 64 scopeid 0x4 
    inet 192.168.1.11 netmask 0xffffff00 broadcast 192.168.1.255
    media: autoselect
    status: active
p2p0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 2304
    ether 02:40:f3:88:27:6c 
    media: autoselect
    status: inactive
tun0: flags=8851<UP,POINTOPOINT,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    inet 10.8.0.6 --> 10.8.0.5 netmask 0xffffffff 
    open (pid 7494)

    ifconfig (server)::

eth0      Link encap:Ethernet  HWaddr 00:23:54:03:F2:BB
          inet addr:192.168.0.10  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::223:54ff:fe03:f2bb/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:113530 errors:0 dropped:0 overruns:0 frame:0
          TX packets:13376 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:25518343 (24.3 MiB)  TX bytes:1310138 (1.2 MiB)
          Interrupt:26 Base address:0xe000

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:6 errors:0 dropped:0 overruns:0 frame:0
          TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:828 (828.0 b)  TX bytes:828 (828.0 b)

tun0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
          inet addr:10.8.0.1  P-t-P:10.8.0.2  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:397 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100

После настройки сервера и клиента OpenVPN необходимо сделать еще одну вещь: добавить маршрут на каждом компьютере (или в маршрутизаторе вашей сети) в локальной сети, который должен связываться с компьютерами в сети vpn.

Пример:

My home network is: 10.13.0.0/24
OpenVPN network is: 10.14.0.0/24

Физическая сетевая карта сервера OpenVPN настроена как: 10.13.0.1/24

Сетевая карта vpn сервера OpenVPN настроена как: 10.14.0.1/24

Когда мой клиент подключается к VPN, он получает IP: 10.14.0.6/24 Чтобы другие компьютеры в 10.13.0.0/24 сеть (домашние компьютеры), чтобы иметь возможность общаться с машинами, подключенными через vpn, мне пришлось добавить определенный маршрут:

route add -net 10.14.0.0/24 gw 10.13.0.1 metric 1

Это позволяет компьютерам в домашней сети связываться с компьютерами в сети OpenVPN и наоборот.

В вашем случае это позволит вашим сетевым компьютерам связываться с компьютерами vpn.

Я написал очень подробную статью о том, как установить и настроить сервер OpenVPN, и вышеупомянутые шаги описаны там, не стесняйтесь проверить ... это может вам помочь: Как: OpenVPN на CentOS

В клиентском ящике выполните следующие проверки:

1. Ping 10.8.0.1, if not ok check client/server firewall let ICMP can pass through, then we can debug deeply.
2. Ping 192.168.0.10, if not ok check:
    A. Client routing table, where the traffic goes while destination network is 192.168.0.0/24, it should go to 10.8.0.5/tun0
    B. Server sysctl net.ipv4.ip_forward, it should be 1.
    C. Server NAT/MASQUERADE with iptables.
3. Traceroute 8.8.8.8, if not ok check which hop stopped the traffic.

Сначала убедитесь, что вы можете проверить связь с IP-адресом диапазона VPN серверов OpenVPN, 10.8.0.1, при условии, что это успешно:

https://community.openvpn.net/openvpn/wiki/BridgingAndRouting

Следуйте инструкциям в разделе Использование маршрутизации, предполагается, что ваше интернет-соединение - это eth0, если это не меняет значение идентификатора вашего адаптера интернет-подключения (ppp0, atm0) и т. Д. Также предполагается, что ваш сервер OpenVPN является вашим основным маршрутизатором для Интернета. подключение.

в Windows клиент должен работать как «Администратор», иначе маршрутизация работать не будет. Интересно, есть ли что-то подобное на Mac? какой клиент openvpn (если есть) вы используете на Mac? вы пробовали запускать с повышенными разрешениями?