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

Pfsense 2.1 OpenVPN не может подключиться к серверам в локальной сети

У меня есть небольшая сеть, подобная этой:

У меня есть Pfsense для подключения моих серверов к WAN, они используют NAT из LAN -> WAN.

У меня есть сервер OpenVPN, использующий TAP, чтобы удаленные работники могли быть подключены к той же локальной сети, что и серверы.

В настоящее время, когда я подключаюсь, все маршруты кажутся нормальными на стороне клиента:

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
300.300.300.300 0.0.0.0         255.255.255.0   U     0      0        0 eth0
10.25.0.0       10.25.255.254   255.255.0.0     UG    0      0        0 tap0
10.25.0.0       0.0.0.0         255.255.0.0     U     0      0        0 tap0
0.0.0.0         300.300.300.300 0.0.0.0         UG    0      0        0 eth0

Я могу пропинговать интерфейс LAN:

root@server:# ping 10.25.255.254

PING 10.25.255.254 (10.25.255.254) 56(84) bytes of data.
64 bytes from 10.25.255.254: icmp_req=1 ttl=64 time=7.65 ms
64 bytes from 10.25.255.254: icmp_req=2 ttl=64 time=7.49 ms
64 bytes from 10.25.255.254: icmp_req=3 ttl=64 time=7.69 ms
64 bytes from 10.25.255.254: icmp_req=4 ttl=64 time=7.31 ms
64 bytes from 10.25.255.254: icmp_req=5 ttl=64 time=7.52 ms
64 bytes from 10.25.255.254: icmp_req=6 ttl=64 time=7.42 ms

Но я не могу пропинговать интерфейс LAN:

root@server:# ping 10.25.255.1
PING 10.25.255.1 (10.25.255.1) 56(84) bytes of data.
From 10.25.255.254: icmp_seq=1 Redirect Host(New nexthop: 10.25.255.1)
From 10.25.255.254: icmp_seq=2 Redirect Host(New nexthop: 10.25.255.1)

Я запустил tcpdump на своем интерфейсе em1 (интерфейс LAN с IP-адресом 10.25.255.254)

tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on em1, link-type EN10MB (Ethernet), capture size 96 bytes
08:21:13.449222 IP 10.25.24.1 > 10.25.255.1: ICMP echo request, id 23623, seq 10, length 64
08:21:13.458211 ARP, Request who-has 10.25.255.1 tell 10.25.24.1, length 28
08:21:14.450541 IP 10.25.24.1 > 10.25.255.1: ICMP echo request, id 23623, seq 11, length 64
08:21:14.458431 ARP, Request who-has 10.25.255.1 tell 10.25.24.1, length 28
08:21:15.451794 IP 10.25.24.1 > 10.25.255.1: ICMP echo request, id 23623, seq 12, length 64
08:21:15.458530 ARP, Request who-has 10.25.255.1 tell 10.25.24.1, length 28
08:21:16.453203 IP 10.25.24.1 > 10.25.255.1: ICMP echo request, id 23623, seq 13, length 64

Таким образом, трафик достигает интерфейса LAN, он также передается хосту, и хост отвечает. Но трафик на интерфейс LAN не ставится.

Проблема была не в openvpn или устройстве pfsense, а скорее в VMWare vSwitch. Если вы запускаете pfsense в VMWare, вам следует изменить «Промискусный режим» vSwitch, связанный с вашими сетями pfsense, с reject на accept. Если вы этого не сделаете, то единственный хост, который увидит мостовой клиент OpenVPN, - это сам сервер pfsense.

Также существует неявное правило для брандмауэра, которое не отображается в пользовательском интерфейсе. Вам необходимо внимательно изучить журнал PF и вручную отключить правило.