X-Git-Url: http://git.sameswireless.fr/l2tpns.git/blobdiff_plain/17552803b25d07f0df3add1ede410ec72afa099c..75ba8921cf932ef11ccac40e5f7bf9627f9697e0:/Docs/manual.html
diff --git a/Docs/manual.html b/Docs/manual.html
index b95858b..65d7f4c 100644
--- a/Docs/manual.html
+++ b/Docs/manual.html
@@ -56,6 +56,7 @@ H3 {
Filtering
Clustering
Routing
+ Avoiding Fragmentation
Performance
@@ -184,6 +185,13 @@ the same as the LAC, or authentication will fail. Only actually be
used if the LAC requests authentication.
+ppp_restart_time (int)
+ppp_max_configure (int)
+ppp_max_failure (int)
+PPP counter and timer values, as described in §4.1 of
+RFC1661.
+
+
primary_dns (ip address)
secondary_dns (ip address)
Whenever a PPP connection is established, DNS servers will be sent to the
@@ -191,14 +199,6 @@ user, both a primary and a secondary. If either is set to 0.0.0.0, then that
one will not be sent.
-save_state (boolean)
-When l2tpns receives a STGTERM it will write out its current
-ip_address_pool, session and tunnel tables to disk prior to exiting to
-be re-loaded at startup. The validity of this data is obviously quite
-short and the intent is to allow an sessions to be retained over a
-software upgrade.
-
-
primary_radius (ip address)
secondary_radius (ip address)
Sets the RADIUS servers used for both authentication and accounting.
@@ -231,6 +231,22 @@ This secret will be used in all RADIUS queries. If this is not set then
RADIUS queries will fail.
+radius_authtypes (string)
+A comma separated list of supported RADIUS authentication methods
+(pap or chap), in order of preference (default pap).
+
+
+radius_dae_port (short)
+Port for DAE RADIUS (Packet of Death/Disconnect, Change of Authorization)
+requests (default: 3799).
+
+
+allow_duplicate_users (boolean)
+Allow multiple logins with the same username. If false (the default),
+any prior session with the same username will be dropped when a new
+session is established.
+
+
bind_address (ip address)
When the tun interface is created, it is assigned the address
specified here. If no address is given, 1.1.1.1 is used. Packets
@@ -282,10 +298,6 @@ second. Even if this is disabled, you can see this information by running
the uptime command on the CLI.
-cleanup_interval (int)
-Interval between regular cleanups (in seconds).
-
-
multi_read_count (int)
Number of packets to read off each of the UDP and TUN fds when
returned as readable by select (default: 10). Avoids incurring the
@@ -307,6 +319,13 @@ Keep all pages mapped by the l2tpns process in memory.
Maximum number of host unreachable ICMP packets to send per second.
+packet_limit (int>
+Maximum number of packets of downstream traffic to be handled each
+tenth of a second per session. If zero, no limit is applied (default:
+0). Intended as a DoS prevention mechanism and not a general
+throttling control (packets are dropped, not queued).
+
+
cluster_address (ip address)
Multicast cluster address (default: 239.192.13.13). See the section
on Clustering for more information.
@@ -325,6 +344,11 @@ Cluster heartbeat timeout in tenths of a second. A new master will be
elected when this interval has been passed without seeing a heartbeat
from the master.
+
+cluster_master_min_adv (int)
+Determines the minumum number of up to date slaves required before the
+master will drop routes (default: 1).
+
BGP routing configuration is entered by the command:
@@ -684,16 +708,15 @@ killall -HUP l2tpns
The signals understood are:
-
-- SIGHUP - Reload the config from disk and re-open log file
-- SIGTERM / SIGINT - Shut down for a restart. This will dump the current
-state to disk (if save_state is set to true). Upon restart, the
-process will read this saved state to resume active sessions.
-
- SIGQUIT - Shut down cleanly. This will send a disconnect message for
-every active session and tunnel before shutting down. This is a good idea
-when upgrading the code, as no sessions will be left with the remote end
-thinking they are open.
-
+
+- SIGHUP
- Reload the config from disk and re-open log file.
+- SIGTERM, SIGINT
- Stop process. Tunnels and sessions are not
+terminated. This signal should be used to stop l2tpns on a
+cluster node where there are other machines to
+continue handling traffic.
+- SIGQUIT
- Shut down tunnels and sessions, exit process when
+complete.
+
Throttling
@@ -806,14 +829,14 @@ supplied structure:
some way.
-
- - t - Tunnel ID
- - s - Session ID
- - username
- - password
- - protocol (0xC023 for PAP, 0xC223 for CHAP)
- - continue_auth - Set to 0 to stop processing authentication modules
-
+
+ - t
- Tunnel
+
- s
- Session
+
- username
+
- password
+
- protocol
- 0xC023 for PAP, 0xC223 for CHAP
+
- continue_auth
- Set to 0 to stop processing authentication modules
+
|
post_auth |
@@ -823,16 +846,16 @@ supplied structure:
to be accepted.
-
- - t - Tunnel ID
- - s - Session ID
- - username
- - auth_allowed - This is already set to true or
+
+ - t
- Tunnel
+
- s
- Session
+
- username
+
- auth_allowed
- This is already set to true or
false depending on whether authentication has been
allowed so far. You can set this to 1 or 0 to force
- allow or disallow authentication
- - protocol (0xC023 for PAP, 0xC223 for CHAP)
-
+ allow or disallow authentication
+ protocol0xC023 for PAP, 0xC223 for CHAP
+
|
packet_rx |
@@ -841,12 +864,12 @@ supplied structure:
seriously slow down the system.
-
- - t - Tunnel ID
- - s - Session ID
- - buf - The raw packet data
- - len - The length of buf
-
+
+ - t
- Tunnel
+
- s
- Session
+
- buf
- The raw packet data
+
- len
- The length of buf
+
|
packet_tx |
@@ -855,12 +878,12 @@ supplied structure:
seriously slow down the system.
-
- - t - Tunnel ID
- - s - Session ID
- - buf - The raw packet data
- - len - The length of buf
-
+
+ - t
- Tunnel
+
- s
- Session
+
- buf
- The raw packet data
+
- len
- The length of buf
+
|
timer |
@@ -869,9 +892,9 @@ supplied structure:
you do is reentrant.
-
- - time_now - The current unix timestamp
-
+
+ - time_now
- The current unix timestamp
+
|
new_session |
@@ -879,10 +902,10 @@ supplied structure:
session is now ready to handle traffic.
-
- - t - Tunnel ID
- - s - Session ID
-
+
+ - t
- Tunnel
+
- s
- Session
+
|
kill_session |
@@ -890,10 +913,10 @@ supplied structure:
This may be called multiple times for the same session.
-
- - t - Tunnel ID
- - s - Session ID
-
+
+ - t
- Tunnel
+
- s
- Session
+
|
radius_response |
@@ -903,12 +926,24 @@ supplied structure:
modules.
-
- - t - Tunnel ID
- - s - Session ID
- - key
- - value
-
+
+ - t
- Tunnel
+
- s
- Session
+
- key
+
- value
+
+ |
+
+ radius_reset |
+ This is called whenever a RADIUS CoA request is
+ received to reset any options to default values before
+ the new values are applied.
+ |
+
+
+ - t
- Tunnel
+
- s
- Session
+
|
control |
@@ -917,21 +952,13 @@ supplied structure:
required.
-
- - buf - The raw packet data
- - l - The raw packet data length
- - source_ip - Where the request came from
- - source_port - Where the request came from
- - response - Allocate a buffer and put your response in here
- - response_length - Length of response
- - send_response - true or false whether a response
- should be sent. If you set this to true, you must
- allocate a response buffer.
- - type - Type of request (see nsctl.c)
- - id - ID of request
- - data - I'm really not sure
- - data_length - Length of data
-
+
+ - iam_master
- Cluster master status
+
- argc
- The number of arguments
+
- argv
- Arguments
+
- response
- Return value: NSCTL_RES_OK or NSCTL_RES_ERR
+
- additional
- Extended response text
+
|
@@ -1023,6 +1050,22 @@ ibgp" for IBGP. If this is not supported by your IOS revision, you
can use "maximum-paths" (which works for EBGP) and set
as_number to a private value such as 64512.
+
Avoiding Fragmentation
+
+Fragmentation of encapsulated return packets to the LAC may be avoided
+for TCP sessions by adding a firewall rule to clamps the MSS on
+outgoing SYN packets.
+
+The following is appropriate for interfaces with a typical MTU of
+1500:
+
+
+iptables -A FORWARD -i tun+ -o eth0 \
+ -p tcp --tcp-flags SYN,RST SYN \
+ -m tcpmss --mss 1413:1600 \
+ -j TCPMSS --set-mss 1412
+
+
Performance is great.