我在网上广泛搜索了所有我能想到的关于这个主题的内容——我希望我只是忽略了显而易见的东西。两周以来,这个问题每天晚上都困扰着我。
(如果相关的话,它是 Cisco 2851。)
我有一个可以正常工作的 VPN。我认为“相关”的配置如下所示:
aaa new-model
aaa authentication ppp default local
aaa authorization exec default local
aaa authorization network default local
aaa accounting delay-start
aaa session-id common
l2tp congestion-control
vpdn enable
vpdn-group 1
! Default PPTP VPDN group
accept-dialin
protocol pptp
virtual-template 1
l2tp tunnel timeout no-session 15
username xxxxx password zz yyyyyyyyy
interface Virtual-Template1
bandwidth inherit
ip unnumbered Dialer1
ip nat inside
ip virtual-reassembly
peer default ip address pool vpn_pool
no keepalive
ppp encrypt mppe auto
ppp authentication pap chap ms-chap
这是一个最小配置 - (我一直在尝试排除所有可能!) - 它可以通过我的 OSX 客户端使用本地身份验证来运行。
但是,启用 RADIUS 身份验证后,如下所示:
conf t
aaa authentication ppp default group radius
aaa authorization network default group radius
...我可以继续连接(所有身份验证通过等)但数据包不流动。
路由表在我的客户端上看起来正常。Cisco 上的路由看起来正常:
...
C 10.0.90.228/32 is directly connected, Virtual-Access6
...
Cisco 无法 ping 通客户端。客户端无法 ping 通 Cisco。似乎没有流量流动。
我有很多调试信息,我很乐意在这里发布 - 但目前我感觉我好像只见树木不见森林(可以这么说)。对于发布哪些特定的调试信息,您有什么建议吗?
这是与 RADIUS 连接时的呼叫者详细信息:
User: ******************, line Vi6, service PPPoVPDN
Connected for 00:00:58, Idle for 00:00:18
Timeouts: Limit Remaining Timer Type
- - -
PPP: LCP Open, MS CHAP (<-), IPCP, CCP
NCP: Open IPCP, CCP
Vi6 LCP: [Open]
Our Negotiated Options
Vi6 LCP: AuthProto MS-CHAP (0x0305C22380)
Vi6 LCP: MagicNumber 0x45DF39FE (0x050645DF39FE)
Peer's Negotiated Options
Vi6 LCP: ACCM 0x00000000 (0x020600000000)
Vi6 LCP: MagicNumber 0x0066ABB7 (0x05060066ABB7)
Vi6 LCP: PFC (0x0702)
Vi6 LCP: ACFC (0x0802)
Vi6 IPCP: [Open]
Our Negotiated Options
Vi6 IPCP: Address 212.159.119.145 (0x0306D49F7791)
Peer's Negotiated Options
Vi6 IPCP: Address 10.0.90.228 (0x03060A005AE4)
Vi6 IPCP: PrimaryDNS 10.0.40.10 (0x81060A00280A)
Peer's Rejected options
SecondaryDNS
Vi6 CCP: [Open]
Our Negotiated Options
Vi6 CCP: MS-PPC supported bits 0x01000040 (0x120601000040)
Peer's Negotiated Options
Vi6 CCP: MS-PPC supported bits 0x01000040 (0x120601000040)
IP: Local 212.159.119.145, remote 10.0.90.228
Counts: 41 packets input, 3260 bytes, 0 no buffer
0 input errors, 0 CRC, 0 frame, 0 overrun
12 packets output, 180 bytes, 0 underruns
0 output errors, 0 collisions, 0 interface resets
这里是 RADIUS 对话的 tcpdump(它是带有 ldap 后端的 FreeRADIUS):
21:31:41.645834 IP (tos 0x0, ttl 254, id 61079, offset 0, flags [none], proto UDP (17), length 182)
10.0.30.1.datametrics > sirius.ad.plfc.org.uk.radius: [udp sum ok]
RADIUS, length: 154
Access Request (1), id: 0x54, Authenticator: 8f1b0b4e3054e4e30000000000000000
Framed Protocol Attribute (7), length: 6, Value: PPP
0x0000: 0000 0001
Username Attribute (1), length: 13, Value: **********
0x0000: 6d61 7474 6865 7768 616c 6c
Vendor Specific Attribute (26), length: 16, Value: Vendor: Microsoft (311)
Vendor Attribute: 11, Length: 8, Value: ...N0T..
0x0000: 0000 0137 0b0a 8f1b 0b4e 3054 e4e3
Vendor Specific Attribute (26), length: 58, Value: Vendor: Microsoft (311)
Vendor Attribute: 1, Length: 50, Value: ..........................T..u....z.....u?=# .&.?.
0x0000: 0000 0137 0134 0101 0000 0000 0000 0000
0x0010: 0000 0000 0000 0000 0000 0000 0000 0000
0x0020: 5405 d575 8c87 edbe 7adc 9b14 b2e6 753f
0x0030: 3d23 20fc 26f6 8094
NAS Port Type Attribute (61), length: 6, Value: Virtual
0x0000: 0000 0005
NAS Port Attribute (5), length: 6, Value: 286
0x0000: 0000 011e
NAS Port ID Attribute (87), length: 17, Value: Uniq-Sess-ID286
0x0000: 556e 6971 2d53 6573 732d 4944 3238 36
Service Type Attribute (6), length: 6, Value: Framed
0x0000: 0000 0002
NAS IP Address Attribute (4), length: 6, Value: 10.0.30.1
0x0000: 0a00 1e01
21:31:41.793107 IP (tos 0x0, ttl 64, id 41574, offset 0, flags [none], proto UDP (17), length 124)
sirius.ad.plfc.org.uk.radius > 10.0.30.1.datametrics: [bad udp cksum 0x5a85 -> 0xe26b!] RADIUS, length: 96
Access Accept (2), id: 0x54, Authenticator: dff324dc434fb85e03fd402ed4645530
Framed Protocol Attribute (7), length: 6, Value: PPP
0x0000: 0000 0001
Framed Compression Attribute (13), length: 6, Value: VJ TCP/IP
0x0000: 0000 0001
Vendor Specific Attribute (26), length: 40, Value: Vendor: Microsoft (311)
Vendor Attribute: 12, Length: 32, Value: W...-..wu...i....H;. .R"....M.R"
0x0000: 0000 0137 0c22 57f8 f2af 2dfa 0177 7585
0x0010: e6ff 69a8 0a03 cf48 3ba0 20e1 5222 b79e
0x0020: a31d 4df5 5222
Vendor Specific Attribute (26), length: 12, Value: Vendor: Microsoft (311)
Vendor Attribute: 7, Length: 4, Value: ....
0x0000: 0000 0137 0706 0000 0001
Vendor Specific Attribute (26), length: 12, Value: Vendor: Microsoft (311)
Vendor Attribute: 8, Length: 4, Value: ....
0x0000: 0000 0137 0806 0000 0006
我完全没有主意了。据我所知,我尝试过的所有调试看起来都一样(除了涉及身份验证的地方)。提前致谢。
答案1
好吧,我始终没能解决这个问题。我竭尽所能,最后得出结论:思科的 IOS(下面列出的版本)根本就不允许通过 RADIUS 进行 PPTP 身份验证。
我的结论只是因为“缺乏”其他证据而得到加强。添加最小的 L2TP 配置工作使用相同的 RADIUS 配置 - 这表明问题出在 Cisco 的 PPTP 代码中。
Cisco IOS Software, 2800 Software (C2800NM-ADVSECURITYK9-M), Version 15.1(1)T, R
无论如何,对于将来遇到此答案的任何人 - 你并不孤单。我成功切换到 L2TP,但从未解决过为什么 PPTP 无法正常工作(特别是使用 RADIUS 身份验证)。