]> git.proxmox.com Git - mirror_frr.git/blob - doc/user/Useful_Sysctl_Settings.md
Merge pull request #3157 from pguibert6WIND/doc_expanded
[mirror_frr.git] / doc / user / Useful_Sysctl_Settings.md
1 # Useful Sysctl Settings
2 Sysctl on Linux systems can tweak many useful behaviors. When it comes to a routing protocol suite like FRRouting there are numerous values depending on your use case that make sense to optimize.
3
4 The below sysctl values provide a logical set of defaults which can be further optimized.
5
6
7 ```
8 # /etc/sysctl.d/99frr_defaults.conf
9 # Place this file at the location above and reload the device.
10 # or run the sysctl -p /etc/sysctl.d/99frr_defaults.conf
11
12 # Enables IPv4/IPv6 Routing
13 net.ipv4.ip_forward = 1
14 net.ipv6.conf.all.forwarding=1
15
16 # Routing
17 net.ipv6.route.max_size=131072
18 net.ipv4.conf.all.ignore_routes_with_linkdown=1
19 net.ipv6.conf.all.ignore_routes_with_linkdown=1
20
21 # Best Settings for Peering w/ BGP Unnumbered
22 # and OSPF Neighbors
23 net.ipv4.conf.all.rp_filter = 0
24 net.ipv4.conf.default.rp_filter = 0
25 net.ipv4.conf.lo.rp_filter = 0
26 net.ipv4.conf.all.forwarding = 1
27 net.ipv4.conf.default.forwarding = 1
28 net.ipv4.conf.default.arp_announce = 2
29 net.ipv4.conf.default.arp_notify = 1
30 net.ipv4.conf.default.arp_ignore=1
31 net.ipv4.conf.all.arp_announce = 2
32 net.ipv4.conf.all.arp_notify = 1
33 net.ipv4.conf.all.arp_ignore=1
34 net.ipv4.icmp_errors_use_inbound_ifaddr=1
35
36 # Miscellaneous Settings
37
38 # Keep ipv6 permanent addresses on an admin down
39 net.ipv6.conf.all.keep_addr_on_down=1
40
41 # igmp
42 net.ipv4.igmp_max_memberships=1000
43 net.ipv4.neigh.default.mcast_solicit = 10
44
45 # MLD
46 net.ipv6.mld_max_msf=512
47
48 # Garbage Collection Settings for ARP and Neighbors
49 net.ipv4.neigh.default.gc_thresh2=7168
50 net.ipv4.neigh.default.gc_thresh3=8192
51 net.ipv4.neigh.default.base_reachable_time_ms=14400000
52 net.ipv6.neigh.default.gc_thresh2=3584
53 net.ipv6.neigh.default.gc_thresh3=4096
54 net.ipv6.neigh.default.base_reachable_time_ms=14400000
55
56 # Use neigh information on selection of nexthop for multipath hops
57 net.ipv4.fib_multipath_use_neigh=1
58
59 # Allows Apps to Work with VRF
60 net.ipv4.tcp_l3mdev_accept=1
61 ```