PPPoE RFC4638
Posted: 03 Apr 2016, 23:48
Hello,
Does accel-ppp support RFC4638 (1500 PPPoE MTU?)
Thank you.
Does accel-ppp support RFC4638 (1500 PPPoE MTU?)
Thank you.
High performance PPTP/L2TP/PPPoE/IPoE server for Linux
https://accel-ppp.org/forum/
Code: Select all
/interface ethernet
set [ find default-name=ether1 ] mtu=1508
/interface pppoe-client
add add-default-route=yes allow=chap disabled=no interface=ether1\
max-mru=1500 max-mtu=1500 name=pppoe-out1 password=user use-peer-dns=yes \
user=user
Code: Select all
status: connected
uptime: 2m3s
active-links: 1
encoding:
service-name:
ac-name: accel-ppp
ac-mac: 00:21:91:8b:41:fe
mtu: 1480
mru: 1500
local-address: 10.10.10.100
remote-address: 172.16.16.1
Code: Select all
status: connected
uptime: 4m33s
active-links: 1
encoding:
service-name:
ac-name: MikroTik
ac-mac: e4:8d:8c:13:a4:9b
mtu: 1500
mru: 1500
local-address: 10.10.10.100
remote-address: 172.16.16.1
Code: Select all
[2012-04-30 07:11:41]: msg: accel-ppp version 1.10.0
[2012-04-30 07:11:41]: debug: shaper: time_range_begin_timer: id=2
[2012-04-30 07:11:41]: info: eth0: recv [PPPoE PADI e4:8d:8c:13:a4:5d => ff:ff:ff:ff:ff:ff sid=0000 <Host-Uniq 0181008c> <Service-Name > <PPP-Max-Payload 1500>]
[2012-04-30 07:11:41]: info: eth0: send [PPPoE PADO 00:21:91:8b:41:fe => e4:8d:8c:13:a4:5d sid=0000 <AC-Name accel-ppp> <Service-Name > <AC-Cookie f5535576800e1b53c57a09f6beeaa4f75206c3a19aa1f7f0> <Host-Uniq 0181008c> <PPP-Max-Payload 1500>]
[2012-04-30 07:11:41]: info: eth0: recv [PPPoE PADR e4:8d:8c:13:a4:5d => 00:21:91:8b:41:fe sid=0000 <Host-Uniq 0181008d> <Service-Name > <PPP-Max-Payload 1500> <AC-Cookie f5535576800e1b53c57a09f6beeaa4f75206c3a19aa1f7f0>]
[2012-04-30 07:11:41]: info: eth0: send [PPPoE PADS 00:21:91:8b:41:fe => e4:8d:8c:13:a4:5d sid=0001 <AC-Name accel-ppp> <Service-Name > <Host-Uniq 0181008d> <PPP-Max-Payload 56325>]
[2012-04-30 07:11:41]: debug: eth0: lcp_layer_init
[2012-04-30 07:11:41]: debug: eth0: auth_layer_init
[2012-04-30 07:11:41]: debug: eth0: ccp_layer_init
[2012-04-30 07:11:41]: debug: eth0: ipcp_layer_init
[2012-04-30 07:11:41]: debug: eth0: ipv6cp_layer_init
[2012-04-30 07:11:41]: debug: eth0: ppp establishing
[2012-04-30 07:11:41]: debug: eth0: lcp_layer_start
[2012-04-30 07:11:41]: info: eth0: send [LCP ConfReq id=1 <auth CHAP-md5> <magic 6b8b4567>]
[2012-04-30 07:11:41]: info: eth0: recv [LCP ConfReq id=32 <magic 7641ac61> < 11 4 6 40 >]
[2012-04-30 07:11:41]: info: eth0: send [LCP ConfRej id=32 < 11 4 6 40 >]
[2012-04-30 07:11:41]: info: eth0: recv [LCP ConfReq id=33 <magic 7641ac61>]
[2012-04-30 07:11:41]: info: eth0: send [LCP ConfAck id=33 ]
[2012-04-30 07:11:42]: info: eth0: recv [LCP ConfReq id=34 <magic 7641ac61>]
[2012-04-30 07:11:42]: info: eth0: send [LCP ConfAck id=34 ]
[2012-04-30 07:11:44]: info: eth0: recv [LCP ConfReq id=35 <magic 7641ac61>]
[2012-04-30 07:11:44]: info: eth0: send [LCP ConfAck id=35 ]
[2012-04-30 07:11:44]: debug: eth0: fsm timeout 9
[2012-04-30 07:11:44]: info: eth0: send [LCP ConfReq id=1 <auth CHAP-md5> <magic 6b8b4567>]
[2012-04-30 07:11:44]: info: eth0: recv [LCP ConfAck id=1 <auth CHAP-md5> <magic 6b8b4567>]
[2012-04-30 07:11:44]: debug: eth0: lcp_layer_started
[2012-04-30 07:11:44]: debug: eth0: auth_layer_start
[2012-04-30 07:11:44]: info: eth0: send [CHAP Challenge id=1 <96d1158c9d1a818b1aa8cd5ee8cecd79>]
[2012-04-30 07:11:44]: info: eth0: recv [CHAP Response id=1 <a5fbd49c752c37a12e3c53680ad265e>, name="user"]
[2012-04-30 07:11:44]: debug: eth0: radius(1): req_enter 1
[2012-04-30 07:11:44]: info: eth0: send [RADIUS(1) Access-Request id=1 <User-Name "user"> <NAS-Identifier "accel-ppp"> <NAS-IP-Address 127.0.0.1> <NAS-Port 4294967295> <NAS-Port-Id ""> <NAS-Port-Type Virtual> <Service-Type Framed-User> <Framed-Protocol PPP> <Calling-Station-Id "e4:8d:8c:13:a4:5d"> <Called-Station-Id "00:21:91:8b:41:fe"> <CHAP-Challenge > <CHAP-Password >]
[2012-04-30 07:11:44]: debug: eth0: radius(1): req_exit 0
[2012-04-30 07:11:44]: info: eth0: recv [RADIUS(1) Access-Accept id=1 <Filter-Id "1,8192/2048"> <Filter-Id "2,10240/2048"><Microsoft MS-Secondary-DNS-Server 8.8.4.4><Microsoft MS-Primary-DNS-Server 8.8.8.8> <Framed-IP-Address 10.10.10.100>]
[2012-04-30 07:11:44]: info: ppp0: connect: ppp0 <--> pppoe(e4:8d:8c:13:a4:5d)
[2012-04-30 07:11:44]: debug: ppp0: ppp connected
[2012-04-30 07:11:44]: info: ppp0: send [CHAP Success id=1 "Authentication succeeded"]
[2012-04-30 07:11:44]: debug: ppp0: auth_layer_started
[2012-04-30 07:11:44]: debug: ppp0: ccp_layer_start
[2012-04-30 07:11:44]: debug: ppp0: ipcp_layer_start
[2012-04-30 07:11:44]: info: ppp0: send [IPCP ConfReq id=1 <addr 172.16.1.1>]
[2012-04-30 07:11:44]: debug: ppp0: ipv6cp_layer_start
[2012-04-30 07:11:44]: info: ppp0: user: authentication succeeded
[2012-04-30 07:11:44]: info: ppp0: recv [IPCP ConfReq id=f <addr 0.0.0.0> <dns1 0.0.0.0> <dns2 0.0.0.0>]
[2012-04-30 07:11:44]: info: ppp0: send [IPCP ConfNak id=f <addr 10.10.10.100> <dns1 8.8.8.8> <dns2 8.8.4.4>]
[2012-04-30 07:11:44]: info: ppp0: recv [IPCP ConfAck id=1 <addr 172.16.1.1>]
[2012-04-30 07:11:44]: error: ppp0: ppp_chan_read: Value too large for defined data type
[2012-04-30 07:11:44]: info: ppp0: recv [IPCP ConfReq id=10 <addr 10.10.10.100> <dns1 8.8.8.8> <dns2 8.8.4.4>]
[2012-04-30 07:11:44]: info: ppp0: send [IPCP ConfAck id=10]
[2012-04-30 07:11:44]: debug: ppp0: ipcp_layer_started
[2012-04-30 07:11:44]: debug: ppp0: radius(1): req_enter 1
[2012-04-30 07:11:44]: info: ppp0: send [RADIUS(1) Accounting-Request id=1 <User-Name "user"> <NAS-Identifier "accel-ppp"> <NAS-IP-Address 127.0.0.1> <NAS-Port 0> <NAS-Port-Id "ppp0"> <NAS-Port-Type Virtual> <Service-Type Framed-User> <Framed-Protocol PPP> <Calling-Station-Id "e4:8d:8c:13:a4:5d"> <Called-Station-Id "00:21:91:8b:41:fe"> <Acct-Status-Type Start> <Acct-Authentic RADIUS> <Acct-Session-Id "ebec891e85f517b1"> <Acct-Session-Time 0> <Acct-Input-Octets 0> <Acct-Output-Octets 0> <Acct-Input-Packets 0> <Acct-Output-Packets 0> <Acct-Input-Gigawords 0> <Acct-Output-Gigawords 0> <Framed-IP-Address 10.10.10.100>]
[2012-04-30 07:11:44]: debug: ppp0: radius(1): req_exit 0
[2012-04-30 07:11:44]: info: ppp0: recv [RADIUS(1) Accounting-Response id=1]
[2012-04-30 07:11:44]: info: ppp0: shaper: installed shaper 10240/2048 (Kbit)
[2012-04-30 07:11:44]: debug: ppp0: pppoe: ppp started
[2012-04-30 07:11:45]: error: ppp0: ppp_chan_read: Value too large for defined data type
[2012-04-30 07:11:46]: error: ppp0: ppp_chan_read: Value too large for defined data type
[2012-04-30 07:11:47]: debug: ppp0: recv [LCP EchoReq id=3 <magic 7641ac61>]
[2012-04-30 07:11:47]: debug: ppp0: send [LCP EchoRep id=3 <magic 6b8b4567>]
Code: Select all
[ppp]
verbose=1
min-mtu=1280
max-mtu=1500
#accomp=deny
#pcomp=deny
#check-ip=0
ccp=0
mppe=deny
ipv4=require
ipv6=deny
ipv6-intf-id=0:0:0:1
ipv6-peer-intf-id=0:0:0:2
ipv6-accept-peer-intf-id=1
lcp-echo-interval=12
#lcp-echo-failure=3
lcp-echo-timeout=60
unit-cache=1
[pppoe]
verbose=1
#ac-name=xxx
#service-name=yyy
#pado-delay=0
#pado-delay=0,100:100,200:200,-1:500
called-sid=mac
#tr101=1
#padi-limit=0
#ip-pool=pppoe
#sid-uppercase=0
#vlan-mon=eth0,10-200
#vlan-timeout=60
#vlan-name=%I.%N
#interface=eth1,padi-limit=1000
interface=eth0
Code: Select all
343c343
< conn->ctrl.max_mtu = min(ETH_DATA_LEN, serv->mtu) - 8;
---
> conn->ctrl.max_mtu = MAX_PPPOE_MTU;
810c810
< static void pppoe_send_PADS(struct pppoe_conn_t *conn)
---
> static void pppoe_send_PADS(struct pppoe_conn_t *conn, uint16_t ppp_max_payload)
827c827
< uint16_t ppp_max_payload = htons(conn->ctrl.max_mtu);
---
> uint16_t ppp_max_payload = htons(ppp_max_payload);
1007,1009d1006
< if (ppp_max_payload > serv->mtu - 8)
< ppp_max_payload = serv->mtu - 8;
<
1168c1165
< pppoe_send_PADS(conn);
---
> pppoe_send_PADS(conn, ppp_max_payload);
1179c1176
< pppoe_send_PADS(conn);
---
> pppoe_send_PADS(conn, ppp_max_payload);
Code: Select all
if session is opened with MRU > 1492:
send up to 2 LCP echo with negotiated MRU size data length
if no lcp reply received:
set ppp interface MTU to default MTU
Code: Select all
if conf_mru_test and session is opened with MRU > 1492:
send up to 2 LCP echo with negotiated MRU size data length
if no lcp reply received:
set ppp interface MTU to default MT