misc/122068: ppp can not set the correct interface with pptpd
Chun-Tien Chang
tcs at kitty.2y.idv.tw
Tue Mar 25 14:30:02 UTC 2008
>Number: 122068
>Category: misc
>Synopsis: ppp can not set the correct interface with pptpd
>Confidential: no
>Severity: non-critical
>Priority: medium
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Tue Mar 25 14:30:01 UTC 2008
>Closed-Date:
>Last-Modified:
>Originator: Chun-Tien Chang
>Release: FreeBSD 7.0 i386 Release
>Organization:
National Tsing Hua University
>Environment:
FreeBSD NAT.NTHUCC.2y.idv.tw 7.0-RELEASE FreeBSD 7.0-RELEASE #2: Sat Mar 22 02:38:46 CST 2008 root at NAT.NTHUCC.2y.idv.tw:/usr/obj/usr/src/sys/NAT.NTHUCC i386
>Description:
When the Windows PPTP Client dial to the poptop vpn server,
the user-ppp can not set the routing table to the correct interface.
>How-To-Repeat:
install ports/net/poptop (poptop-1.3.4_1)
==ppp config==
/etc/ppp/ppp.conf
pptp:
set timeout 0
set log phase chat connect lcp ipcp command
set dial
set login
set ifaddr 10.2.1.254 10.2.1.100-10.2.1.199 255.255.255.255
set server /tmp/loop "" 0177
set accmap ffffffff
enable proxy
enable proxyall
enable mschapv2
accept mschapv2
enable mppe
enable lqr
enable dns
accept dns
set dns 10.2.1.254
allow mode direct
# ifconfig -a
em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=9b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM>
ether 00:50:56:a1:56:c7
inet6 fe80::250:56ff:fea1:56c7%em0 prefixlen 64 scopeid 0x1
inet 140.114.60.105 netmask 0xffffff00 broadcast 140.114.60.255
media: Ethernet autoselect (1000baseTX <full-duplex>)
status: active
em1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=9b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM>
ether 00:50:56:a1:38:13
inet6 fe80::250:56ff:fea1:3813%em1 prefixlen 64 scopeid 0x2
inet 10.2.1.254 netmask 0xffffff00 broadcast 10.2.1.255
media: Ethernet autoselect (1000baseTX <full-duplex>)
status: active
===the original routing table===
# netstat -rn
Routing tables
Internet:
Destination Gateway Flags Refs Use Mtu Netif Expire
default 140.114.60.254 UGS 0 1741539 1500 em0
10.2.1.0/24 link#2 UC 0 0 1500 em1
10.2.1.242 00:50:56:a1:0d:ce UHLW 1 77 1500 em1 948
10.2.1.251 00:50:56:a1:2e:32 UHLW 1 4 1500 em1 297
10.2.1.254 00:50:56:a1:38:13 UHLW 1 9395 16384 lo0
127.0.0.1 127.0.0.1 UH 0 14555 16384 lo0
140.114.60.0/24 link#1 UC 0 0 1500 em0
140.114.60.254 00:0f:8f:7e:dc:40 UHLW 2 0 1500 em0 1029
===after dial up to pptpd routing table===
# netstat -rn
Routing tables
Internet:
Destination Gateway Flags Refs Use Mtu Netif Expire
default 140.114.60.254 UGS 0 1741769 1500 em0
10.2.1.0/24 link#2 UC 0 0 1500 em1
10.2.1.144 10.2.1.254 UGH 0 0 1398 em1
10.2.1.242 00:50:56:a1:0d:ce UHLW 1 77 1500 em1 786
10.2.1.250 00:50:56:b9:43:25 UHLW 1 8 1500 em1 1197
10.2.1.251 00:50:56:a1:2e:32 UHLW 1 4 1500 em1 135
10.2.1.254 00:50:56:a1:38:13 UHLW 2 9395 16384 lo0
127.0.0.1 127.0.0.1 UH 0 14555 16384 lo0
140.114.60.0/24 link#1 UC 0 0 1500 em0
140.114.60.254 00:0f:8f:7e:dc:40 UHLW 2 0 1500 em0 1199
the result is different with freeebsd 6.2 release,
in freebsd 6.2 , the 10.2.1.144 will route to interface tun0
in freebsd 7.0 , it routes to em1 ????why?
# ifconfig -a
em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=9b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM>
ether 00:50:56:a1:56:c7
inet6 fe80::250:56ff:fea1:56c7%em0 prefixlen 64 scopeid 0x1
inet 140.114.60.105 netmask 0xffffff00 broadcast 140.114.60.255
media: Ethernet autoselect (1000baseTX <full-duplex>)
status: active
em1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=9b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM>
ether 00:50:56:a1:38:13
inet6 fe80::250:56ff:fea1:3813%em1 prefixlen 64 scopeid 0x2
inet 10.2.1.254 netmask 0xffffff00 broadcast 10.2.1.255
media: Ethernet autoselect (1000baseTX <full-duplex>)
status: active
tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> metric 0 mtu 1398
inet 10.2.1.254 --> 10.2.1.144 netmask 0xffffffff
inet6 fe80::250:56ff:fea1:56c7%tun0 prefixlen 64 scopeid 0x7
Opened by PID 4408
>Fix:
there are two way to fix it.
1. use differenet subnet for vpn. Don't use the same subnet for vpn routing.
user-ppp will set the correct routing table.
2. downgrade to FreeBSD 6.2
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-bugs
mailing list