Skip to content

Configuration

yagoplx/y edited this page Apr 24, 2021 · 1 revision

This page contains every configuration option and description under /etc/routertools.d/ files.
All values set here are the defaults.

  • routertools.d/daemon.conf
# x86routertools daemon mode configuration file
# these options are only valid for the --daemon command

# daemon_manage_inet_every -> a number in seconds. the internet watchdog will be executed every this amount of time.
daemon_manage_inet_every=60

# daemon_manage_wifi_every -> a number in seconds. the wifi watchdog will be executed every this amount of time.
daemon_manage_wifi_every=15

# daemon_wifi_wait_for_internet_timeout -> a number in seconds.
# if running in daemon mode and require_internet is enabled, after this long and internet is still not available wifi will be started anyway.
# set to 0 if you really want to disable this
daemon_wifi_wait_for_internet_timeout=30
  • routertools.d/x86routertools.conf
# x86routertools main configuration file

# use_logger -> a boolean.
# if true, the script will try to use logger to send messages to the system log.
# if you are running routertools in the crontab or via a systemd service, you don't need this.
use_logger=false

# status_led -> a string. point this to an entry in /sys/class/leds/ to have routertools control that led
# for indicating status changes. leave empty to turn it off.
status_led=ath9k-phy0

# inet_iface -> the interface that will be checked by
# internet commands, and started by internet scripts. example: enp2s0
inet_iface=ppp0

# important_services -> a list of systemd services important to this router.
# they will be started by the connectivity commands. example: dnsmasq haveged
# you should also include your firewall service here.
important_services=dnsmasq

# notify_mode -> if properly set, check commands like check-inet will send a global notification if they notice
# something is wrong. can be 'x11' for a desktop notification, 'tty' for terminal, and 'both' for both. Use 'none' if you don't want this.
notify_mode=none

# inet_check_timeout -> a number in seconds. this is for how long it'll wait for an external address to respond
# or for dns names to be resolved. higher values make the internet check more lenient, and perhaps slower.
inet_check_timeout=6

# silence_check_services -> a boolean. if true, you won't get a warning about things not being installed. 
silence_check_services=false

# enable_rngd -> a boolean. if true, rng-tools' rngd will be started along with the wifi AP and haveged.
# it makes additional randomness for the OS. however, it may cause high CPU usage on computers without hardware RNG generators.
enable_rngd=false

# enable_cake_sqm -> a boolean. if true, CAKE queue discipline will be applied
# in a way similar to sqm_scripts. This helps with bufferbloat and latency.
# it is applied to most, if not all, interfaces, except for lo.
enable_cake_sqm=true

# enable_cake_ack_filter -> a boolean. if true, CAKE ack filtering will be enabled on all interfaces.
# to improve performance on some networks (esp. asymmetric links). this option may cause problems, and needs testing.
enable_cake_ack_filter=false

# sqm_ack_filter_aggressive -> a boolean. if true, and enable_cake_ack_filter is also true, the ack filter
# will be set to aggressive mode on all interfaces. use this on highly asymmetric links like satellite.
sqm_ack_filter_aggressive=false

# ack_filter_no_ppp -> a boolean. if true, and enable_cake_ack_filter is also true, the ack filter
# will not be enabled on ppp interfaces. try this if you encounter problems with ppp
ack_filter_no_ppp=false

# restart_services_for_wifi -> a boolean. if true, important_services will be automatically restarted alongside wifi interfaces.
restart_services_for_wifi=false

# sqm_inet_upload -> a number. set this to your internet's upload speed in Mbps.
# if this is not set, i will just not do upload traffic shaping.
sqm_inet_upload=

# sqm_inet_download -> a number. set this to your internet's download speed in Mbps.
# if this is not set, i will just not do download traffic shaping.
sqm_inet_download=

# sqm_wash_markings -> a boolean. if true, washes out traffic type markings inbound.
# use this if you don't trust the ISP to get them right.
sqm_wash_markings=false

# sqm_use_overheads -> a boolean. if true, sqm will use some predefined overhead keywords for packet size compensation. may help with bufferbloat.
sqm_use_overheads=true

# sqm_wifi_wash -> a boolean. if true, washes diffserv markings on wifi interfaces, for when you don't trust WMM to get things right.
# this will automatically set besteffort on the wifi interfaces.
sqm_wifi_wash=false

# sqm_diffserv -> a number. select number of diffserv tins cake will use, can be 0, 3, 4 or 8
# 0 is besteffort and may complement sqm_wash_markings. if unset, 4 will be used.
sqm_diffserv=4

# sqm_enable_ifb_on_ethernet -> a boolean. if true, full cake traffic shaping
# will also be attempted on ethernet interfaces, not just ppp.
# enable this if you get internet on this machine via NAT/DHCP from another router.
sqm_enable_ifb_on_ethernet=false

# enable_bbr -> a boolean. if true, enables Google's BBR tcp congestion algorithm for
# enhanced network performance, when applying SQM. Will enable BBRv2 instead of v1 if available.
enable_bbr=true

# enable_rpfilter -> a boolean. if true, enables reverse path filtering on all interfaces, when applying qdisc options.
# this will block common address forging attacks on your network.
# it does not replace a firewall!
enable_rpfilter=true
  • routertools.d/wifi-access-points/example_interface.conf
# x86routertools interface configuration file
# This file can be reset to the original via 'routertools reset-config'
# To change what interface this file belongs to just rename it to 'whatever_interface_name.conf'
# Same goes for the hostapd configuration file except the filename should end with _hostapd.conf

# WIRELESS INTERFACE OPTIONS #
# hostapd_wait_for_secs -> seconds to wait for hostapd to ready interfaces
# 15 seconds is a reasonable number. increase this if you use ACS or a lot of virtual interfaces.
hostapd_wait_for_secs=15 

# wifi_txpower -> transmission power for this interface
# can be 'auto' or a number in dBm for fixed power. Auto is usually best.
wifi_txpower=auto

# wifi_powersave -> a boolean (true/false). if true, powersaving features will be enabled as soon as the AP is turned on.
wifi_powersave=true

# wifi_regdomain -> if set to a two-letter country code like GY, will set this as the system's regulatory domain
# before starting the AP. This affects transmit power and usable channels.
wifi_regdomain=GY

# wifi_drivers -> a list of kernel modules to remove and insert upon starting this AP.
# this is not the same as hostapd's driver configuration. lspci -v may give you the name of the kernel module the interface is using.
# leave commented if you don't know.
# wifi_drivers= 

# wifi_reload_drivers -> a boolean (true/false). if true, the drivers will be reloaded on AP start.
# depends on wifi_drivers, and fixes some issues with some drivers such as rtl8192eX
# wifi_reload_drivers=false

# wifi_darkstat_port -> a port. if set, darkstat will be initialized on this interface and port
# so that you may snoop on its traffic statistics via a web browser. Requires darkstat to be installed
# wifi_darkstat_port=667

# wifi_virtual_interfaces -> a list of additional interfaces you spawned with hostapd bssids.
# the script needs to know about them to properly initialize them.
# if you are only using one AP on this network card you need not set this.
# wifi_virtual_interfaces=

# wifi_dynack -> a boolean. true enables dynamic ack timeout estimation algorithm, only works on Atheros cards
# dynack may significantly increase connection speed with far away/ weak clients. dynack is not supported by all cards.
wifi_dynack=true

# wifi_paprd -> a boolean. true enables digital predistortion, only works on Atheros cards.
# paprd compensates for signal distortion at higher rates and allows higher rates at higher power levels (+range)
# WARNING: there are reports of paprd damaging some older Atheros ath9k cards, but this has probably been fixed.
wifi_paprd=false

# wifi_retry_short -> a number. sets the limit of times the AP will retry sending a packet before dropping it.
# default is 3
wifi_retry_short=3

# wifi_retry_long -> a number. sets the limit of times the AP will retry sending a packet before dropping it in RTS/CTS mode.
# default is 2
wifi_retry_long=2

# wifi_lnamix -> a boolean. true enables low noise amplifier mixing, only works on Atheros cards.
# lnamix might help signal strength.
wifi_lnamix=true

# wifi_ani -> a boolean. false disables adaptive noise immunity, only works on Atheros cards.
wifi_ani=true

# wifi_coverage -> a number. sets coverage class in microsec of air propagation time. default is 3. setting this disables dynack.
wifi_coverage=3

# wifi_disable_cck -> a boolean. true disables legacy b/g rates, disallowing legacy clients and increasing airtime efficiency.
# only has any effect with lots of connected stations, may have adverse effects otherwise.
wifi_disable_cck=true

# NETWORKING OPTIONS #

# require_internet -> a boolean. true makes it so this wireless interface will only be set up via check commands if an internet connection is available.
require_internet=false

# enable_ipv6 -> a boolean. true only enables ipv6 forwarding on this interface.
# if you actually want it to work you need radvd or a configured dnsmasq.
# unless something else in your network does this for you.
enable_ipv6=true

# enable_pptp -> a boolean. true inserts the module needed for PPTP. if you are not sure you need it say false here, as the Point to Point Tunneling Protocol is known to be insecure.
enable_pptp=false

# gateway -> a gateway in ipv4 format. example: 192.168.1.1
# usually this is the internet router's private ip address.
# since this computer is probably also the internet providing router,
# you may want to set it to this computer's ip address as set in /etc/hosts
# this will also be used as the interface's ipv4 address.
# gateways for more virtual interfaces can be set in gateway_x
gateway=192.168.1.1
gateway_x='192.168.2.1 192.168.3.1'

# gateway_6 -> a gateway in ipv6 format. same quirks as gateway. example: ba1f:010a:89d4::1
gateway_6=
gateway_6x=
Clone this wiki locally