]>
Commit | Line | Data |
---|---|---|
1ec46976 EP |
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 | |
cbacd05b | 40 | net.ipv6.route.skip_notify_on_dev_down=1 |
1ec46976 EP |
41 | |
42 | # igmp | |
43 | net.ipv4.igmp_max_memberships=1000 | |
44 | net.ipv4.neigh.default.mcast_solicit = 10 | |
45 | ||
46 | # MLD | |
47 | net.ipv6.mld_max_msf=512 | |
48 | ||
49 | # Garbage Collection Settings for ARP and Neighbors | |
50 | net.ipv4.neigh.default.gc_thresh2=7168 | |
51 | net.ipv4.neigh.default.gc_thresh3=8192 | |
52 | net.ipv4.neigh.default.base_reachable_time_ms=14400000 | |
53 | net.ipv6.neigh.default.gc_thresh2=3584 | |
54 | net.ipv6.neigh.default.gc_thresh3=4096 | |
55 | net.ipv6.neigh.default.base_reachable_time_ms=14400000 | |
56 | ||
57 | # Use neigh information on selection of nexthop for multipath hops | |
58 | net.ipv4.fib_multipath_use_neigh=1 | |
59 | ||
60 | # Allows Apps to Work with VRF | |
61 | net.ipv4.tcp_l3mdev_accept=1 | |
62 | ``` |