Configuration file for l2tpns
/etc/l2tpns/startup-config
startup-config is the configuration file for l2tpns.
The format is plain text, in the same format as accepted by the configuration mode of l2tpns's telnet administrative interface. Comments are indicated by either the character # or !.
Settings are specified with
set variable value
The following variables may be set:
debug
Set the level of debugging messages written to the log file. The value should be between 0 and 5, with 0 being no debugging, and 5 being the highest.
log_file
This will be where all logging and debugging information is written to. This may be either a filename, such as /var/log/l2tpns, or the string syslog:facility, where facility is any one of the syslog logging facilities, such as local5.
pid_file
If set, the process id will be written to the specified file. The value must be an absolute path.
random_device
Path to random data source (default /dev/urandom). Use "" to use the rand() library function.
l2tp_secret
The secret used by l2tpns for authenticating tunnel request. Must be the same as the LAC, or authentication will fail. Only actually be used if the LAC requests authentication.
l2tp_mtu
MTU of interface for L2TP traffic (default: 1500). Used to set link MRU and adjust TCP MSS.
ppp_restart_time
Restart timer for PPP protocol negotiation in seconds (default: 3).
ppp_max_configure
Number of configure requests to send before giving up (default: 10).
ppp_max_failure
Number of Configure-Nak requests to send before sending a Configure-Reject (default: 5).
primary_dns, secondary_dns
Whenever a PPP connection is established, DNS servers will be sent to the user, both a primary and a secondary. If either is set to 0.0.0.0, then that one will not be sent.
primary_radius, secondary_radius
Sets the RADIUS servers used for both authentication and accounting. If the primary server does not respond, then the secondary RADIUS server will be tried.
primary_radius_port, secondary_radius_port
Sets the authentication ports for the primary and secondary RADIUS servers. The accounting port is one more than the authentication port. If no ports are given, authentication defaults to 1645, and accounting to 1646.
radius_accounting
If set to true, then RADIUS accounting packets will be sent. A Start record will be sent when the session is successfully authenticated, and a Stop record when the session is closed.
radius_interim
If radius_accounting is on, defines the interval between sending of RADIUS interim accounting records (in seconds).
radius_secret
Secret to be used in RADIUS packets.
radius_authtypes
A comma separated list of supported RADIUS authentication methods ("pap" or "chap"), in order of preference (default "pap").
radius_dae_port
Port for DAE RADIUS (Packet of Death/Disconnect, Change of Authorization) requests (default: 3799).
radius_bind_min, radius_bind_max
Define a port range in which to bind sockets used to send and receive RADIUS packets. Must be at least RADIUS_FDS (64) wide. Simplifies firewalling of RADIUS ports (default: dynamically assigned).
allow_duplicate_users
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.
guest_account
Allow multiple logins matching this specific username.
bind_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 containing user traffic should be routed via this address if given, otherwise the primary address of the machine.
peer_address
Address to send to clients as the default gateway.
send_garp
Determines whether or not to send a gratuitous ARP for the bind_address when the server is ready to handle traffic (default: true). This setting is ignored if BGP is configured.
throttle_speed
Sets the default speed (in kbits/s) which sessions will be limited to.
throttle_buckets
Number of token buckets to allocate for throttling. Each throttled session requires two buckets (in and out).
accounting_dir
If set to a directory, then every 5 minutes the current usage for every connected use will be dumped to a file in this directory.
dump_speed
If set to true, then the current bandwidth utilization will be logged every second. Even if this is disabled, you can see this information by running the uptime command on the CLI.
multi_read_count
Number of packets to read off each of the UDP and TUN fds when returned as readable by select (default: 10). Avoids incurring the unnecessary system call overhead of select on busy servers.
scheduler_fifo
Sets the scheduling policy for the l2tpns process to SCHED_FIFO. This causes the kernel to immediately preempt any currently running SCHED_OTHER (normal) process in favour of l2tpns when it becomes runnable.
Ignored on uniprocessor systems.
lock_pages
Keep all pages mapped by the l2tpns process in memory.
icmp_rate
Maximum number of host unreachable ICMP packets to send per second.
packet_limit
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
Multicast cluster address (default: 239.192.13.13).
cluster_interface
Interface for cluster packets (default: eth0).
cluster_mcast_ttl
TTL for multicast packets (default: 1).
cluster_hb_interval
Interval in tenths of a second between cluster heartbeat/pings.
cluster_hb_timeout
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
Determines the minumum number of up to date slaves required before the master will drop routes (default: 1).
ipv6_prefix
Enable negotiation of IPv6. This forms the the first 64 bits of the client allocated address. The remaining 64 come from the allocated IPv4 address and 4 bytes of 0s.
The routing configuration section is entered by the command
router bgp as
where as specifies the local AS number.
Subsequent lines prefixed with neighbour peer define the attributes of BGP neighhbours. Valid commands are:
neighbour peer remote-as as
neighbour peer timers keepalive hold
Where peer specifies the BGP neighbour as either a hostname or IP address, as is the remote AS number and keepalive, hold are the timer values in seconds.
Named access lists may be defined with either of
ip access-list standard name
ip access-list extended name
Subsequent lines starting with permit or deny define the body of the access-list.
Standard Access Lists
Standard access lists are defined with:
{permit|deny} source [dest]
Where source and dest specify IP matches using one of:
address wildard
host address
any
address and wildard are in dotted-quad notation, bits in the wildard indicate which address bits in address are relevant to the match (0 = exact match; 1 = don't care).
The shorthand 'host address' is equivalent to 'address 0.0.0.0'; 'any' to '0.0.0.0 255.255.255.255'.
Extended Access Lists
Extended access lists are defined with:
{permit|deny} proto source [ports] dest [ports] [flags]
Where proto is one of ip, tcp or udp, and source and dest are as described above for standard lists.
For TCP and UDP matches, source and destination may be optionally followed by a ports specification:
{eq|neq|gt|lt} port
range from to
flags may be one of:
{match-any|match-all} {+|-}{fin|syn|rst|psh|ack|urg} ...
Match packets with any or all of the tcp flags set (+) or clear (-). established
Match "established" TCP connections: packets with RST or ACK set, and SYN clear. fragments
Match IP fragments. May not be specified on rules with layer 4 matches.