Bmxd
==== BMX 0.7-freifunk-dresden [md5:7c12c568db112e354a99f8e8d6386fdc] (compatibility version 10)
Inhaltsverzeichnis
Hilfe
bmxd -h
Usage: bmxd [LONGOPT[=[-]VAL]] | [-SHORTOPT[SHORTOPT...] [[-]VAL]] ...
e.g. bmxd dev=eth0 dev=wlan0 # to start daemon on interface eth0 and wlan0 e.g. bmxd -cid8 # to connect and show configured options and connevtivity
General configuration options:
--help, -h
help
--version, -v
show version
--test
test remaining args and provide feedback about projected success (without applying them)
--no_fork, -d <VAL> def: -1 range: [ 0 ... 11 ]
print debug information instead of forking to background
--debug, -d <VAL> def: -1 range: [ 0 ... 11 ]
show debug information: 0 : system 1 : originators 2 : gateways 3 : changes 4 : verbose changes 5 : profiling (depends on -DDEBUG_MALLOC -DMEMORY_USAGE -DPROFILE_DATA) 8 : details 9 : announced networks and interfaces 10 : links 11 : testing
--runtime_dir <DIRECTORY>
set runtime DIR of pid, socket,... - default: /var/run/bmx (must be defined before --connect).
--loop_mode, -l
put client daemon in loop mode to periodically refresh debug information
--connect, -c
set client mode. Connect and forward remaining args to main routing daemon
System and policy-routing options:
--base_port <VAL> def: 4305 range: [ 1025 ... 60000 ]
set udp ports
--prio_rules_offset <VAL> def: 6400 range: [ 3 ... 32765 ]
set preferences for iproute2-style rules to rt_table (see: man ip)
--rt_table_offset <VAL> def: 64 range: [ 0 ... 252 ]
set bmx routing-table offset (iproute2 style, see: man ip)
--throw_rules <VAL> def: 1 range: [ 0 , 1 ]
disable/enable default throw rules
--prio_rules <VAL> def: 1 range: [ 0 , 1 ]
disable/enable default priority rules
--no_policy_routing, -n
disable policy routing (throw and priority rules)
--metric <VAL> def: 0 range: [ 0 ... 2147483647 ]
set non-zero metric for all bmx routes
--lo_rule <VAL> def: 1 range: [ 0 , 1 ]
disable/enable autoconfiguration of lo rule
--network <NETADDR>/<PREFIX-LENGTH>
only accept OGM from network
--gateway_tunnel_network <NETADDR>/<PREFIX-LENGTH>
set network used by gateway nodes
--options, -i
inform about configured options
--dbg_mute_timeout <VAL> def: 100000 range: [ 0 ... 10000000 ]
set timeout in ms for muting frequent messages
--throw <NETADDR>/<PREFIX-LENGTH>
do NOT route packets matching src or dst IP range(s) into gateway tunnel or announced networks /network, /n <NETADDR> specify network of throw rule /netmask, /m <NETMASK> specify network of throw rule
--pedantic_cleanup <VAL> def: 0 range: [ 0 , 1 ]
disable/enable pedantic cleanup of system configuration (like ip_forward,..) at program termination. Its generally safer to keep this disabled to not mess up with other routing protocols
Protocol options:
--status
show status
--routes
show routes
--links
show links
--originators
show originators
--dev <interface-name>
add or change device or its configuration, options for specified device are: /ttl, /t <VAL> def: 50 range: [ 1 ... 63 ] set TTL of generated OGMs /clone, /c <VAL> def: 200 range: [ 0 ... 400 ] broadcast OGMs per ogm-interval with given probability (e.g. 200% will broadcast the same OGM twice) /hide, /h <VAL> def: 0 range: [ 0 , 1 ] disable/enable hiding of OGMs generated to non link-neighboring nodes. Default for non-primary interfaces /linklayer, /l <VAL> def: 0 range: [ 0 ... 2 ] manually set device type for linklayer specific optimization (0=loopback, 1=lan, 2=wlan)
--interfaces
show configured interfaces
--link_window_size <VAL> def: 20 range: [ 1 ... 250 ]
set link window size (LWS) for link-quality calculation (link metric)
--link_lounge_size <VAL> def: 2 range: [ 0 ... 10 ]
set local LLS buffer size to artificially delay OGM processing for ordered link-quality calulation
--path_window_size <VAL> def: 100 range: [ 10 ... 250 ]
set path window size (PWS) for end2end path-quality calculation (path metric)
--path_lounge_size <VAL> def: 8 range: [ 0 ... 31 ]
set default PLS buffer size to artificially delay my OGM processing for ordered path-quality calulation
--path_hysteresis <VAL> def: 0 range: [ 0 ... 50 ]
use hysteresis to delay route switching to alternative next-hop neighbors with better path metric
--fast_path_window_size <VAL> def: 20 range: [ 2 ... 250 ]
--fast_path_hysteresis <VAL> def: 1 range: [ 0 ... 50 ]
use hysteresis to delay fast-route switching to alternative next-hop neighbors with a recently extremely better path metric
--fast_path_faktor <VAL> def: 150 range: [ 100 ... 1000 ]
configure threshold faktor for dead-path detection
--drop_two_hop_loops <VAL> def: 0 range: [ 0 , 1 ]
drop OGMs received via two-hop loops
--asymmetric_exp <VAL> def: 1 range: [ 0 ... 3 ]
ignore OGMs (rcvd via asymmetric links) with TQ^<val> to radically reflect asymmetric-links
--asocial_device <VAL> def: 0 range: [ 0 , 1 ]
disable/enable asocial mode for devices unwilling to forward other nodes' traffic
--ogm_broadcasts <VAL> def: 200 range: [ 0 ... 400 ]
broadcast OGMs per ogm-interval for wireless devices with given probability [%] (eg 200% will broadcast the same OGM twice)
--asymmetric_weight <VAL> def: 100 range: [ 0 ... 100 ]
ignore OGMs (rcvd via asymmetric links) with given probability [%] to better reflect asymmetric-links
--hop_penalty <VAL> def: 1 range: [ 0 ... 100 ]
ignore OGMs with given probability [%] to better reflect path-hop distance
--lateness_penalty <VAL> def: 1 range: [ 0 ... 100 ]
penalize non-first rcvd OGMs
--purge_timeout <VAL> def: 100 range: [ 10 ... 864000 ]
timeout in seconds for purging stale originators
--dad_timeout <VAL> def: 100 range: [ 1 ... 3600 ]
duplicate address (DAD) detection timout in seconds
--ttl, -t <VAL> def: 50 range: [ 1 ... 63 ]
set time-to-live (TTL) for OGMs of primary interface
--flush_all
purge all neighbors and routes on the fly
--script <script-file>
called on gw selection
Scheduling options:
--ogm_interval, -o <VAL> def: 1000 range: [ 50 ... 100000 ]
set interval in ms with which new originator message (OGM) are send
--ogi_power_save <VAL> def: 50 range: [ 50 ... 100000 ]
enable power-saving feature by setting increased OGI when no other nodes are in range
--aggreg_interval <VAL> def: 500 range: [ 35 ... 4000 ]
set aggregation interval (SHOULD be smaller than the half of your and others OGM interval)
--udp_data_size <VAL> def: 256 range: [ 24 ... 1020 ]
set preferred udp-data size for send packets
--simulate_cleanup <VAL> def: 0 range: [ 0 , 1 ]
simulate paranoia and cleanup_all for testing
Gateway (GW) and tunnel options:
--routing_class, -r <VAL> def: 0 range: [ 0 ... 3 ]
control GW-client functionality: 0 -> no tunnel, no default route (default) 1 -> permanently select fastest GW according to GW announcment (deprecated) 2 -> permanently select most stable GW accoridng to measurement 3 -> dynamically switch to most stable GW
--gateway_hysteresis <VAL> def: 2 range: [ 1 ... 100 ]
set number of additional rcvd OGMs before changing to more stable GW (only relevant for -r3 GW-clients)
--preferred_gateway, -p <ADDRESS>
permanently select specified GW if available
--gateway_class, -g <VAL>[/VAL]
set GW up- & down-link class (e.g. 5mbit/1024kbit)
--tun_persist <VAL> def: 1 range: [ 0 , 1 ]
disable/enable ioctl TUNSETPERSIST for GW tunnels (disabling was required for openVZ emulation)
--gateways
show currently available gateways