PPTP и proxyarp
Hi, All!
Занимаюсь настройкой PPTP сервера для доступа снаружи во
внутреннюю сеть. VPN-клиентам выдаются адреса из локальной сети, в
/etc/ppp/pptpd-options указан proxyarp. Но но на ARP-запросы машин из
локальной сети ответы с VPN-сервера не уходят.
Схема следующая:
[GW Inet-a ] [PPTP-Server ] [GW локалки ]
[ gw] [eth0 eth1] [gw ]
[YYY.YYY.YYY.YYY]<-->[YYY.YYY.YYY.XXX 192.168.201.14]<-->[192.168.201.1]
При подключении клиента (W2k) на сервере поднимается ppp0:
21: ppp0: <POINTOPOINT,MULTICAST,NOARP,UP> mtu 1496 qdisc pfifo_fast qlen 3
link/ppp
inet 192.168.201.49 peer 192.168.201.50/32 scope global ppp0
С клиента пингуется 192.168.201.49, 192.168.201.50, 192.168.201.14. При этом
192.168.201.1 с клиента не пингуется. При пинге 192.168.201.1 с клиента запросы
ARP приходят, а ответов нет:
# tcpdump -pn -i eth1 arp
19:00:21.824124 arp who-has 192.168.201.50 tell 192.168.201.1
19:00:24.454138 arp who-has 192.168.201.50 tell 192.168.201.1
Т.е. 192.168.201.1 не знает куда слать ответы пинга. При этом на
PPTP-сервере:
# arp -a
? (192.168.201.1) at 00:0F:34:89:78:80 [ether] on eth1
? (212.1.71.97) at 00:50:73:28:20:11 [ether] on eth0
? (192.168.201.50) at <from_interface> PERM PUB on eth1
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
В логах pppd:
Oct 27 18:40:00 wifi pppd[4394]: found interface eth1 for proxy arp
Oct 27 18:40:00 wifi pppd[4394]: local IP address 192.168.201.49
Oct 27 18:40:00 wifi pppd[4394]: remote IP address 192.168.201.50
Но при этом:
# cat /proc/net/arp
IP address HW type Flags HW address Mask Device
192.168.201.1 0x1 0x2 00:0F:34:89:78:80 * eth1
192.168.201.50 0x1 0xc 00:00:00:00:00:00 * eth1
^^^^^^^^^^^^^^^^^
...
В HW-адресе проксируемого IP-шника так и должны быть нули?
Таблица маршрутизации на PPTP-сервере:
# netstat -nr
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.201.50 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0
YYY.YYY.YYY.0 0.0.0.0 255.255.255.240 U 0 0 0 eth0
192.168.201.0 192.168.201.1 255.255.255.0 UG 0 0 0 eth1
192.168.201.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
0.0.0.0 YYY.YYY.YYY.YYY 0.0.0.0 UG 0 0 0 eth0
ip_forwarding включён. Ядро 2.6.13-mm3, pptpd 1.2.1-4, ppp
2.4.3-20050321+2.
Как можно полечить proxyarp?
--
With best regards, Oleg Gritsinevich
Reply to: