1 /proc/sys/net/ipv4/* Variables:
7 Forward Packets between interfaces.
9 This variable is special, its change resets all configuration
10 parameters to their default state (RFC1122 for hosts, RFC1812
13 ip_default_ttl - INTEGER
16 ip_no_pmtu_disc - BOOLEAN
17 Disable Path MTU Discovery.
21 default 562 - minimum discovered Path MTU
24 Time, in seconds, that cached PMTU information is kept.
27 The advertised MSS depends on the first hop route MTU, but will
28 never be lower than this setting.
32 ipfrag_high_thresh - INTEGER
33 Maximum memory used to reassemble IP fragments. When
34 ipfrag_high_thresh bytes of memory is allocated for this purpose,
35 the fragment handler will toss packets until ipfrag_low_thresh
38 ipfrag_low_thresh - INTEGER
39 See ipfrag_high_thresh
42 Time in seconds to keep an IP fragment in memory.
44 ipfrag_secret_interval - INTEGER
45 Regeneration interval (in seconds) of the hash secret (or lifetime
46 for the hash secret) for IP fragments.
49 ipfrag_max_dist - INTEGER
50 ipfrag_max_dist is a non-negative integer value which defines the
51 maximum "disorder" which is allowed among fragments which share a
52 common IP source address. Note that reordering of packets is
53 not unusual, but if a large number of fragments arrive from a source
54 IP address while a particular fragment queue remains incomplete, it
55 probably indicates that one or more fragments belonging to that queue
56 have been lost. When ipfrag_max_dist is positive, an additional check
57 is done on fragments before they are added to a reassembly queue - if
58 ipfrag_max_dist (or more) fragments have arrived from a particular IP
59 address between additions to any IP fragment queue using that source
60 address, it's presumed that one or more fragments in the queue are
61 lost. The existing fragment queue will be dropped, and a new one
62 started. An ipfrag_max_dist value of zero disables this check.
64 Using a very small value, e.g. 1 or 2, for ipfrag_max_dist can
65 result in unnecessarily dropping fragment queues when normal
66 reordering of packets occurs, which could lead to poor application
67 performance. Using a very large value, e.g. 50000, increases the
68 likelihood of incorrectly reassembling IP fragments that originate
69 from different IP datagrams, which could result in data corruption.
74 inet_peer_threshold - INTEGER
75 The approximate size of the storage. Starting from this threshold
76 entries will be thrown aggressively. This threshold also determines
77 entries' time-to-live and time intervals between garbage collection
78 passes. More entries, less time-to-live, less GC interval.
80 inet_peer_minttl - INTEGER
81 Minimum time-to-live of entries. Should be enough to cover fragment
82 time-to-live on the reassembling side. This minimum time-to-live is
83 guaranteed if the pool size is less than inet_peer_threshold.
86 inet_peer_maxttl - INTEGER
87 Maximum time-to-live of entries. Unused entries will expire after
88 this period of time if there is no memory pressure on the pool (i.e.
89 when the number of entries in the pool is very small).
92 inet_peer_gc_mintime - INTEGER
93 Minimum interval between garbage collection passes. This interval is
94 in effect under high memory pressure on the pool.
97 inet_peer_gc_maxtime - INTEGER
98 Minimum interval between garbage collection passes. This interval is
99 in effect under low (or absent) memory pressure on the pool.
105 Limit of socket listen() backlog, known in userspace as SOMAXCONN.
106 Defaults to 128. See also tcp_max_syn_backlog for additional tuning
110 Controls Appropriate Byte Count (ABC) defined in RFC3465.
111 ABC is a way of increasing congestion window (cwnd) more slowly
112 in response to partial acknowledgments.
114 0 increase cwnd once per acknowledgment (no ABC)
115 1 increase cwnd once per acknowledgment of full sized segment
116 2 allow increase cwnd by two if acknowledgment is
117 of two segments to compensate for delayed acknowledgments.
120 tcp_abort_on_overflow - BOOLEAN
121 If listening service is too slow to accept new connections,
122 reset them. Default state is FALSE. It means that if overflow
123 occurred due to a burst, connection will recover. Enable this
124 option _only_ if you are really sure that listening daemon
125 cannot be tuned to accept connections faster. Enabling this
126 option can harm clients of your server.
128 tcp_adv_win_scale - INTEGER
129 Count buffering overhead as bytes/2^tcp_adv_win_scale
130 (if tcp_adv_win_scale > 0) or bytes-bytes/2^(-tcp_adv_win_scale),
134 tcp_allowed_congestion_control - STRING
135 Show/set the congestion control choices available to non-privileged
136 processes. The list is a subset of those listed in
137 tcp_available_congestion_control.
138 Default is "reno" and the default setting (tcp_congestion_control).
140 tcp_app_win - INTEGER
141 Reserve max(window/2^tcp_app_win, mss) of window for application
142 buffer. Value 0 is special, it means that nothing is reserved.
145 tcp_available_congestion_control - STRING
146 Shows the available congestion control choices that are registered.
147 More congestion control algorithms may be available as modules,
150 tcp_base_mss - INTEGER
151 The initial value of search_low to be used by the packetization layer
152 Path MTU discovery (MTU probing). If MTU probing is enabled,
153 this is the initial MSS used by the connection.
155 tcp_congestion_control - STRING
156 Set the congestion control algorithm to be used for new
157 connections. The algorithm "reno" is always available, but
158 additional choices may be available based on kernel configuration.
159 Default is set as part of kernel configuration.
162 Allows TCP to send "duplicate" SACKs.
165 Enable Explicit Congestion Notification in TCP.
168 Enable FACK congestion avoidance and fast retransmission.
169 The value is not used, if tcp_sack is not enabled.
171 tcp_fin_timeout - INTEGER
172 Time to hold socket in state FIN-WAIT-2, if it was closed
173 by our side. Peer can be broken and never close its side,
174 or even died unexpectedly. Default value is 60sec.
175 Usual value used in 2.2 was 180 seconds, you may restore
176 it, but remember that if your machine is even underloaded WEB server,
177 you risk to overflow memory with kilotons of dead sockets,
178 FIN-WAIT-2 sockets are less dangerous than FIN-WAIT-1,
179 because they eat maximum 1.5K of memory, but they tend
180 to live longer. Cf. tcp_max_orphans.
183 Enables Forward RTO-Recovery (F-RTO) defined in RFC4138.
184 F-RTO is an enhanced recovery algorithm for TCP retransmission
185 timeouts. It is particularly beneficial in wireless environments
186 where packet loss is typically due to random radio interference
187 rather than intermediate router congestion. F-RTO is sender-side
188 only modification. Therefore it does not require any support from
191 If set to 1, basic version is enabled. 2 enables SACK enhanced
192 F-RTO if flow uses SACK. The basic version can be used also when
193 SACK is in use though scenario(s) with it exists where F-RTO
194 interacts badly with the packet counting of the SACK enabled TCP
197 tcp_frto_response - INTEGER
198 When F-RTO has detected that a TCP retransmission timeout was
199 spurious (i.e, the timeout would have been avoided had TCP set a
200 longer retransmission timeout), TCP has several options what to do
201 next. Possible values are:
202 0 Rate halving based; a smooth and conservative response,
203 results in halved cwnd and ssthresh after one RTT
204 1 Very conservative response; not recommended because even
205 though being valid, it interacts poorly with the rest of
206 Linux TCP, halves cwnd and ssthresh immediately
207 2 Aggressive response; undoes congestion control measures
208 that are now known to be unnecessary (ignoring the
209 possibility of a lost retransmission that would require
210 TCP to be more cautious), cwnd and ssthresh are restored
211 to the values prior timeout
212 Default: 0 (rate halving based)
214 tcp_keepalive_time - INTEGER
215 How often TCP sends out keepalive messages when keepalive is enabled.
218 tcp_keepalive_probes - INTEGER
219 How many keepalive probes TCP sends out, until it decides that the
220 connection is broken. Default value: 9.
222 tcp_keepalive_intvl - INTEGER
223 How frequently the probes are send out. Multiplied by
224 tcp_keepalive_probes it is time to kill not responding connection,
225 after probes started. Default value: 75sec i.e. connection
226 will be aborted after ~11 minutes of retries.
228 tcp_low_latency - BOOLEAN
229 If set, the TCP stack makes decisions that prefer lower
230 latency as opposed to higher throughput. By default, this
231 option is not set meaning that higher throughput is preferred.
232 An example of an application where this default should be
233 changed would be a Beowulf compute cluster.
236 tcp_max_orphans - INTEGER
237 Maximal number of TCP sockets not attached to any user file handle,
238 held by system. If this number is exceeded orphaned connections are
239 reset immediately and warning is printed. This limit exists
240 only to prevent simple DoS attacks, you _must_ not rely on this
241 or lower the limit artificially, but rather increase it
242 (probably, after increasing installed memory),
243 if network conditions require more than default value,
244 and tune network services to linger and kill such states
245 more aggressively. Let me to remind again: each orphan eats
246 up to ~64K of unswappable memory.
248 tcp_max_syn_backlog - INTEGER
249 Maximal number of remembered connection requests, which are
250 still did not receive an acknowledgment from connecting client.
251 Default value is 1024 for systems with more than 128Mb of memory,
252 and 128 for low memory machines. If server suffers of overload,
253 try to increase this number.
255 tcp_max_tw_buckets - INTEGER
256 Maximal number of timewait sockets held by system simultaneously.
257 If this number is exceeded time-wait socket is immediately destroyed
258 and warning is printed. This limit exists only to prevent
259 simple DoS attacks, you _must_ not lower the limit artificially,
260 but rather increase it (probably, after increasing installed memory),
261 if network conditions require more than default value.
263 tcp_mem - vector of 3 INTEGERs: min, pressure, max
264 min: below this number of pages TCP is not bothered about its
267 pressure: when amount of memory allocated by TCP exceeds this number
268 of pages, TCP moderates its memory consumption and enters memory
269 pressure mode, which is exited when memory consumption falls
272 max: number of pages allowed for queueing by all TCP sockets.
274 Defaults are calculated at boot time from amount of available
277 tcp_moderate_rcvbuf - BOOLEAN
278 If set, TCP performs receive buffer auto-tuning, attempting to
279 automatically size the buffer (no greater than tcp_rmem[2]) to
280 match the size required by the path for full throughput. Enabled by
283 tcp_mtu_probing - INTEGER
284 Controls TCP Packetization-Layer Path MTU Discovery. Takes three
287 1 - Disabled by default, enabled when an ICMP black hole detected
288 2 - Always enabled, use initial MSS of tcp_base_mss.
290 tcp_no_metrics_save - BOOLEAN
291 By default, TCP saves various connection metrics in the route cache
292 when the connection closes, so that connections established in the
293 near future can use these to set initial conditions. Usually, this
294 increases overall performance, but may sometimes cause performance
295 degradation. If set, TCP will not cache metrics on closing
298 tcp_orphan_retries - INTEGER
299 How may times to retry before killing TCP connection, closed
300 by our side. Default value 7 corresponds to ~50sec-16min
301 depending on RTO. If you machine is loaded WEB server,
302 you should think about lowering this value, such sockets
303 may consume significant resources. Cf. tcp_max_orphans.
305 tcp_reordering - INTEGER
306 Maximal reordering of packets in a TCP stream.
309 tcp_retrans_collapse - BOOLEAN
310 Bug-to-bug compatibility with some broken printers.
311 On retransmit try to send bigger packets to work around bugs in
314 tcp_retries1 - INTEGER
315 How many times to retry before deciding that something is wrong
316 and it is necessary to report this suspicion to network layer.
317 Minimal RFC value is 3, it is default, which corresponds
318 to ~3sec-8min depending on RTO.
320 tcp_retries2 - INTEGER
321 How may times to retry before killing alive TCP connection.
322 RFC1122 says that the limit should be longer than 100 sec.
323 It is too small number. Default value 15 corresponds to ~13-30min
326 tcp_rfc1337 - BOOLEAN
327 If set, the TCP stack behaves conforming to RFC1337. If unset,
328 we are not conforming to RFC, but prevent TCP TIME_WAIT
332 tcp_rmem - vector of 3 INTEGERs: min, default, max
333 min: Minimal size of receive buffer used by TCP sockets.
334 It is guaranteed to each TCP socket, even under moderate memory
338 default: initial size of receive buffer used by TCP sockets.
339 This value overrides net.core.rmem_default used by other protocols.
340 Default: 87380 bytes. This value results in window of 65535 with
341 default setting of tcp_adv_win_scale and tcp_app_win:0 and a bit
342 less for default tcp_app_win. See below about these variables.
344 max: maximal size of receive buffer allowed for automatically
345 selected receiver buffers for TCP socket. This value does not override
346 net.core.rmem_max. Calling setsockopt() with SO_RCVBUF disables
347 automatic tuning of that socket's receive buffer size, in which
348 case this value is ignored.
349 Default: between 87380B and 4MB, depending on RAM size.
352 Enable select acknowledgments (SACKS).
354 tcp_slow_start_after_idle - BOOLEAN
355 If set, provide RFC2861 behavior and time out the congestion
356 window after an idle period. An idle period is defined at
357 the current RTO. If unset, the congestion window will not
358 be timed out after an idle period.
362 Use the Host requirements interpretation of the TCP urgent pointer field.
363 Most hosts use the older BSD interpretation, so if you turn this on
364 Linux might not communicate correctly with them.
367 tcp_synack_retries - INTEGER
368 Number of times SYNACKs for a passive TCP connection attempt will
369 be retransmitted. Should not be higher than 255. Default value
370 is 5, which corresponds to ~180seconds.
372 tcp_syncookies - BOOLEAN
373 Only valid when the kernel was compiled with CONFIG_SYNCOOKIES
374 Send out syncookies when the syn backlog queue of a socket
375 overflows. This is to prevent against the common 'SYN flood attack'
378 Note, that syncookies is fallback facility.
379 It MUST NOT be used to help highly loaded servers to stand
380 against legal connection rate. If you see SYN flood warnings
381 in your logs, but investigation shows that they occur
382 because of overload with legal connections, you should tune
383 another parameters until this warning disappear.
384 See: tcp_max_syn_backlog, tcp_synack_retries, tcp_abort_on_overflow.
386 syncookies seriously violate TCP protocol, do not allow
387 to use TCP extensions, can result in serious degradation
388 of some services (f.e. SMTP relaying), visible not by you,
389 but your clients and relays, contacting you. While you see
390 SYN flood warnings in logs not being really flooded, your server
391 is seriously misconfigured.
393 tcp_syn_retries - INTEGER
394 Number of times initial SYNs for an active TCP connection attempt
395 will be retransmitted. Should not be higher than 255. Default value
396 is 5, which corresponds to ~180seconds.
398 tcp_timestamps - BOOLEAN
399 Enable timestamps as defined in RFC1323.
401 tcp_tso_win_divisor - INTEGER
402 This allows control over what percentage of the congestion window
403 can be consumed by a single TSO frame.
404 The setting of this parameter is a choice between burstiness and
405 building larger TSO frames.
408 tcp_tw_recycle - BOOLEAN
409 Enable fast recycling TIME-WAIT sockets. Default value is 0.
410 It should not be changed without advice/request of technical
413 tcp_tw_reuse - BOOLEAN
414 Allow to reuse TIME-WAIT sockets for new connections when it is
415 safe from protocol viewpoint. Default value is 0.
416 It should not be changed without advice/request of technical
419 tcp_window_scaling - BOOLEAN
420 Enable window scaling as defined in RFC1323.
422 tcp_wmem - vector of 3 INTEGERs: min, default, max
423 min: Amount of memory reserved for send buffers for TCP sockets.
424 Each TCP socket has rights to use it due to fact of its birth.
427 default: initial size of send buffer used by TCP sockets. This
428 value overrides net.core.wmem_default used by other protocols.
429 It is usually lower than net.core.wmem_default.
432 max: Maximal amount of memory allowed for automatically tuned
433 send buffers for TCP sockets. This value does not override
434 net.core.wmem_max. Calling setsockopt() with SO_SNDBUF disables
435 automatic tuning of that socket's send buffer size, in which case
436 this value is ignored.
437 Default: between 64K and 4MB, depending on RAM size.
439 tcp_workaround_signed_windows - BOOLEAN
440 If set, assume no receipt of a window scaling option means the
441 remote TCP is broken and treats the window as a signed quantity.
442 If unset, assume the remote TCP is not broken even if we do
443 not receive a window scaling option from them.
446 tcp_dma_copybreak - INTEGER
447 Lower limit, in bytes, of the size of socket reads that will be
448 offloaded to a DMA copy engine, if one is present in the system
449 and CONFIG_NET_DMA is enabled.
454 udp_mem - vector of 3 INTEGERs: min, pressure, max
455 Number of pages allowed for queueing by all UDP sockets.
457 min: Below this number of pages UDP is not bothered about its
458 memory appetite. When amount of memory allocated by UDP exceeds
459 this number, UDP starts to moderate memory usage.
461 pressure: This value was introduced to follow format of tcp_mem.
463 max: Number of pages allowed for queueing by all UDP sockets.
465 Default is calculated at boot time from amount of available memory.
467 udp_rmem_min - INTEGER
468 Minimal size of receive buffer used by UDP sockets in moderation.
469 Each UDP socket is able to use the size for receiving data, even if
470 total pages of UDP sockets exceed udp_mem pressure. The unit is byte.
473 udp_wmem_min - INTEGER
474 Minimal size of send buffer used by UDP sockets in moderation.
475 Each UDP socket is able to use the size for sending data, even if
476 total pages of UDP sockets exceed udp_mem pressure. The unit is byte.
481 cipso_cache_enable - BOOLEAN
482 If set, enable additions to and lookups from the CIPSO label mapping
483 cache. If unset, additions are ignored and lookups always result in a
484 miss. However, regardless of the setting the cache is still
485 invalidated when required when means you can safely toggle this on and
486 off and the cache will always be "safe".
489 cipso_cache_bucket_size - INTEGER
490 The CIPSO label cache consists of a fixed size hash table with each
491 hash bucket containing a number of cache entries. This variable limits
492 the number of entries in each hash bucket; the larger the value the
493 more CIPSO label mappings that can be cached. When the number of
494 entries in a given hash bucket reaches this limit adding new entries
495 causes the oldest entry in the bucket to be removed to make room.
498 cipso_rbm_optfmt - BOOLEAN
499 Enable the "Optimized Tag 1 Format" as defined in section 3.4.2.6 of
500 the CIPSO draft specification (see Documentation/netlabel for details).
501 This means that when set the CIPSO tag will be padded with empty
502 categories in order to make the packet data 32-bit aligned.
505 cipso_rbm_structvalid - BOOLEAN
506 If set, do a very strict check of the CIPSO option when
507 ip_options_compile() is called. If unset, relax the checks done during
508 ip_options_compile(). Either way is "safe" as errors are caught else
509 where in the CIPSO processing code but setting this to 0 (False) should
510 result in less work (i.e. it should be faster) but could cause problems
511 with other implementations that require strict checking.
516 ip_local_port_range - 2 INTEGERS
517 Defines the local port range that is used by TCP and UDP to
518 choose the local port. The first number is the first, the
519 second the last local port number. Default value depends on
520 amount of memory available on the system:
522 < 128Mb 1024-4999 or even less.
523 This number defines number of active connections, which this
524 system can issue simultaneously to systems not supporting
525 TCP extensions (timestamps). With tcp_tw_recycle enabled
526 (i.e. by default) range 1024-4999 is enough to issue up to
527 2000 connections per second to systems supporting timestamps.
529 ip_nonlocal_bind - BOOLEAN
530 If set, allows processes to bind() to non-local IP addresses,
531 which can be quite useful - but may break some applications.
535 If set non-zero, enables support for dynamic addresses.
536 If set to a non-zero value larger than 1, a kernel log
537 message will be printed when dynamic address rewriting
541 icmp_echo_ignore_all - BOOLEAN
542 If set non-zero, then the kernel will ignore all ICMP ECHO
546 icmp_echo_ignore_broadcasts - BOOLEAN
547 If set non-zero, then the kernel will ignore all ICMP ECHO and
548 TIMESTAMP requests sent to it via broadcast/multicast.
551 icmp_ratelimit - INTEGER
552 Limit the maximal rates for sending ICMP packets whose type matches
553 icmp_ratemask (see below) to specific targets.
554 0 to disable any limiting, otherwise the maximal rate in jiffies(1)
557 icmp_ratemask - INTEGER
558 Mask made of ICMP types for which rates are being limited.
559 Significant bits: IHGFEDCBA9876543210
560 Default mask: 0000001100000011000 (6168)
562 Bit definitions (see include/linux/icmp.h):
564 3 Destination Unreachable *
569 C Parameter Problem *
574 H Address Mask Request
577 * These are rate limited by default (see default mask above)
579 icmp_ignore_bogus_error_responses - BOOLEAN
580 Some routers violate RFC1122 by sending bogus responses to broadcast
581 frames. Such violations are normally logged via a kernel warning.
582 If this is set to TRUE, the kernel will not give such warnings, which
583 will avoid log file clutter.
586 icmp_errors_use_inbound_ifaddr - BOOLEAN
588 If zero, icmp error messages are sent with the primary address of
589 the exiting interface.
591 If non-zero, the message will be sent with the primary address of
592 the interface that received the packet that caused the icmp error.
593 This is the behaviour network many administrators will expect from
594 a router. And it can make debugging complicated network layouts
597 Note that if no primary address exists for the interface selected,
598 then the primary address of the first non-loopback interface that
599 has one will be used regardless of this setting.
603 igmp_max_memberships - INTEGER
604 Change the maximum number of multicast groups we can subscribe to.
607 conf/interface/* changes special settings per interface (where "interface" is
608 the name of your network interface)
609 conf/all/* is special, changes the settings for all interfaces
612 log_martians - BOOLEAN
613 Log packets with impossible addresses to kernel log.
614 log_martians for the interface will be enabled if at least one of
615 conf/{all,interface}/log_martians is set to TRUE,
616 it will be disabled otherwise
618 accept_redirects - BOOLEAN
619 Accept ICMP redirect messages.
620 accept_redirects for the interface will be enabled if:
621 - both conf/{all,interface}/accept_redirects are TRUE in the case forwarding
622 for the interface is enabled
624 - at least one of conf/{all,interface}/accept_redirects is TRUE in the case
625 forwarding for the interface is disabled
626 accept_redirects for the interface will be disabled otherwise
631 Enable IP forwarding on this interface.
633 mc_forwarding - BOOLEAN
634 Do multicast routing. The kernel needs to be compiled with CONFIG_MROUTE
635 and a multicast routing daemon is required.
636 conf/all/mc_forwarding must also be set to TRUE to enable multicast routing
640 Integer value used to differentiate the devices by the medium they
641 are attached to. Two devices can have different id values when
642 the broadcast packets are received only on one of them.
643 The default value 0 means that the device is the only interface
644 to its medium, value of -1 means that medium is not known.
646 Currently, it is used to change the proxy_arp behavior:
647 the proxy_arp feature is enabled for packets forwarded between
648 two devices attached to different media.
652 proxy_arp for the interface will be enabled if at least one of
653 conf/{all,interface}/proxy_arp is set to TRUE,
654 it will be disabled otherwise
656 shared_media - BOOLEAN
657 Send(router) or accept(host) RFC1620 shared media redirects.
658 Overrides ip_secure_redirects.
659 shared_media for the interface will be enabled if at least one of
660 conf/{all,interface}/shared_media is set to TRUE,
661 it will be disabled otherwise
664 secure_redirects - BOOLEAN
665 Accept ICMP redirect messages only for gateways,
666 listed in default gateway list.
667 secure_redirects for the interface will be enabled if at least one of
668 conf/{all,interface}/secure_redirects is set to TRUE,
669 it will be disabled otherwise
672 send_redirects - BOOLEAN
673 Send redirects, if router.
674 send_redirects for the interface will be enabled if at least one of
675 conf/{all,interface}/send_redirects is set to TRUE,
676 it will be disabled otherwise
679 bootp_relay - BOOLEAN
680 Accept packets with source address 0.b.c.d destined
681 not to this host as local ones. It is supposed, that
682 BOOTP relay daemon will catch and forward such packets.
683 conf/all/bootp_relay must also be set to TRUE to enable BOOTP relay
688 accept_source_route - BOOLEAN
689 Accept packets with SRR option.
690 conf/all/accept_source_route must also be set to TRUE to accept packets
691 with SRR option on the interface
692 default TRUE (router)
696 1 - do source validation by reversed path, as specified in RFC1812
697 Recommended option for single homed hosts and stub network
698 routers. Could cause troubles for complicated (not loop free)
699 networks running a slow unreliable protocol (sort of RIP),
700 or using static routes.
702 0 - No source validation.
704 conf/all/rp_filter must also be set to TRUE to do source validation
707 Default value is 0. Note that some distributions enable it
711 1 - Allows you to have multiple network interfaces on the same
712 subnet, and have the ARPs for each interface be answered
713 based on whether or not the kernel would route a packet from
714 the ARP'd IP out that interface (therefore you must use source
715 based routing for this to work). In other words it allows control
716 of which cards (usually 1) will respond to an arp request.
718 0 - (default) The kernel can respond to arp requests with addresses
719 from other interfaces. This may seem wrong but it usually makes
720 sense, because it increases the chance of successful communication.
721 IP addresses are owned by the complete host on Linux, not by
722 particular interfaces. Only for more complex setups like load-
723 balancing, does this behaviour cause problems.
725 arp_filter for the interface will be enabled if at least one of
726 conf/{all,interface}/arp_filter is set to TRUE,
727 it will be disabled otherwise
729 arp_announce - INTEGER
730 Define different restriction levels for announcing the local
731 source IP address from IP packets in ARP requests sent on
733 0 - (default) Use any local address, configured on any interface
734 1 - Try to avoid local addresses that are not in the target's
735 subnet for this interface. This mode is useful when target
736 hosts reachable via this interface require the source IP
737 address in ARP requests to be part of their logical network
738 configured on the receiving interface. When we generate the
739 request we will check all our subnets that include the
740 target IP and will preserve the source address if it is from
741 such subnet. If there is no such subnet we select source
742 address according to the rules for level 2.
743 2 - Always use the best local address for this target.
744 In this mode we ignore the source address in the IP packet
745 and try to select local address that we prefer for talks with
746 the target host. Such local address is selected by looking
747 for primary IP addresses on all our subnets on the outgoing
748 interface that include the target IP address. If no suitable
749 local address is found we select the first local address
750 we have on the outgoing interface or on all other interfaces,
751 with the hope we will receive reply for our request and
752 even sometimes no matter the source IP address we announce.
754 The max value from conf/{all,interface}/arp_announce is used.
756 Increasing the restriction level gives more chance for
757 receiving answer from the resolved target while decreasing
758 the level announces more valid sender's information.
761 Define different modes for sending replies in response to
762 received ARP requests that resolve local target IP addresses:
763 0 - (default): reply for any local target IP address, configured
765 1 - reply only if the target IP address is local address
766 configured on the incoming interface
767 2 - reply only if the target IP address is local address
768 configured on the incoming interface and both with the
769 sender's IP address are part from same subnet on this interface
770 3 - do not reply for local addresses configured with scope host,
771 only resolutions for global and link addresses are replied
773 8 - do not reply for all local addresses
775 The max value from conf/{all,interface}/arp_ignore is used
776 when ARP request is received on the {interface}
779 Define behavior when gratuitous arp replies are received:
780 0 - drop gratuitous arp frames
781 1 - accept gratuitous arp frames
783 app_solicit - INTEGER
784 The maximum number of probes to send to the user space ARP daemon
785 via netlink before dropping back to multicast probes (see
786 mcast_solicit). Defaults to 0.
788 disable_policy - BOOLEAN
789 Disable IPSEC policy (SPD) for this interface
791 disable_xfrm - BOOLEAN
792 Disable IPSEC encryption on this interface, whatever the policy
797 Allows you to write a number, which can be used as required.
807 delon.nicolas@wanadoo.fr
812 /proc/sys/net/ipv6/* Variables:
814 IPv6 has no global variables such as tcp_*. tcp_* settings under ipv4/ also
815 apply to IPv6 [XXX?].
818 Default value for IPV6_V6ONLY socket option,
819 which restricts use of the IPv6 socket to IPv6 communication
821 TRUE: disable IPv4-mapped address feature
822 FALSE: enable IPv4-mapped address feature
824 Default: FALSE (as specified in RFC2553bis)
828 ip6frag_high_thresh - INTEGER
829 Maximum memory used to reassemble IPv6 fragments. When
830 ip6frag_high_thresh bytes of memory is allocated for this purpose,
831 the fragment handler will toss packets until ip6frag_low_thresh
834 ip6frag_low_thresh - INTEGER
835 See ip6frag_high_thresh
837 ip6frag_time - INTEGER
838 Time in seconds to keep an IPv6 fragment in memory.
840 ip6frag_secret_interval - INTEGER
841 Regeneration interval (in seconds) of the hash secret (or lifetime
842 for the hash secret) for IPv6 fragments.
846 Change the interface-specific default settings.
850 Change all the interface-specific settings.
852 [XXX: Other special features than forwarding?]
854 conf/all/forwarding - BOOLEAN
855 Enable global IPv6 forwarding between all interfaces.
857 IPv4 and IPv6 work differently here; e.g. netfilter must be used
858 to control which interfaces may forward packets and which not.
860 This also sets all interfaces' Host/Router setting
861 'forwarding' to the specified value. See below for details.
863 This referred to as global forwarding.
869 Change special settings per interface.
871 The functional behaviour for certain settings is different
872 depending on whether local forwarding is enabled or not.
875 Accept Router Advertisements; autoconfigure using them.
877 Functional default: enabled if local forwarding is disabled.
878 disabled if local forwarding is enabled.
880 accept_ra_defrtr - BOOLEAN
881 Learn default router in Router Advertisement.
883 Functional default: enabled if accept_ra is enabled.
884 disabled if accept_ra is disabled.
886 accept_ra_pinfo - BOOLEAN
887 Learn Prefix Information in Router Advertisement.
889 Functional default: enabled if accept_ra is enabled.
890 disabled if accept_ra is disabled.
892 accept_ra_rt_info_max_plen - INTEGER
893 Maximum prefix length of Route Information in RA.
895 Route Information w/ prefix larger than or equal to this
896 variable shall be ignored.
898 Functional default: 0 if accept_ra_rtr_pref is enabled.
899 -1 if accept_ra_rtr_pref is disabled.
901 accept_ra_rtr_pref - BOOLEAN
902 Accept Router Preference in RA.
904 Functional default: enabled if accept_ra is enabled.
905 disabled if accept_ra is disabled.
907 accept_redirects - BOOLEAN
910 Functional default: enabled if local forwarding is disabled.
911 disabled if local forwarding is enabled.
913 accept_source_route - INTEGER
914 Accept source routing (routing extension header).
916 >= 0: Accept only routing header type 2.
917 < 0: Do not accept routing header.
922 Autoconfigure addresses using Prefix Information in Router
925 Functional default: enabled if accept_ra_pinfo is enabled.
926 disabled if accept_ra_pinfo is disabled.
928 dad_transmits - INTEGER
929 The amount of Duplicate Address Detection probes to send.
933 Configure interface-specific Host/Router behaviour.
935 Note: It is recommended to have the same setting on all
936 interfaces; mixed router/host scenarios are rather uncommon.
940 By default, Host behaviour is assumed. This means:
942 1. IsRouter flag is not set in Neighbour Advertisements.
943 2. Router Solicitations are being sent when necessary.
944 3. If accept_ra is TRUE (default), accept Router
945 Advertisements (and do autoconfiguration).
946 4. If accept_redirects is TRUE (default), accept Redirects.
950 If local forwarding is enabled, Router behaviour is assumed.
951 This means exactly the reverse from the above:
953 1. IsRouter flag is set in Neighbour Advertisements.
954 2. Router Solicitations are not sent.
955 3. Router Advertisements are ignored.
956 4. Redirects are ignored.
958 Default: FALSE if global forwarding is disabled (default),
962 Default Hop Limit to set.
966 Default Maximum Transfer Unit
967 Default: 1280 (IPv6 required minimum)
969 router_probe_interval - INTEGER
970 Minimum interval (in seconds) between Router Probing described
975 router_solicitation_delay - INTEGER
976 Number of seconds to wait after interface is brought up
977 before sending Router Solicitations.
980 router_solicitation_interval - INTEGER
981 Number of seconds to wait between Router Solicitations.
984 router_solicitations - INTEGER
985 Number of Router Solicitations to send until assuming no
989 use_tempaddr - INTEGER
990 Preference for Privacy Extensions (RFC3041).
991 <= 0 : disable Privacy Extensions
992 == 1 : enable Privacy Extensions, but prefer public
993 addresses over temporary addresses.
994 > 1 : enable Privacy Extensions and prefer temporary
995 addresses over public addresses.
996 Default: 0 (for most devices)
997 -1 (for point-to-point devices and loopback devices)
999 temp_valid_lft - INTEGER
1000 valid lifetime (in seconds) for temporary addresses.
1001 Default: 604800 (7 days)
1003 temp_prefered_lft - INTEGER
1004 Preferred lifetime (in seconds) for temporary addresses.
1005 Default: 86400 (1 day)
1007 max_desync_factor - INTEGER
1008 Maximum value for DESYNC_FACTOR, which is a random value
1009 that ensures that clients don't synchronize with each
1010 other and generate new addresses at exactly the same time.
1011 value is in seconds.
1014 regen_max_retry - INTEGER
1015 Number of attempts before give up attempting to generate
1016 valid temporary addresses.
1019 max_addresses - INTEGER
1020 Number of maximum addresses per interface. 0 disables limitation.
1021 It is recommended not set too large value (or 0) because it would
1022 be too easy way to crash kernel to allow to create too much of
1023 autoconfigured addresses.
1028 Limit the maximal rates for sending ICMPv6 packets.
1029 0 to disable any limiting, otherwise the maximal rate in jiffies(1)
1034 Pekka Savola <pekkas@netcore.fi>
1035 YOSHIFUJI Hideaki / USAGI Project <yoshfuji@linux-ipv6.org>
1038 /proc/sys/net/bridge/* Variables:
1040 bridge-nf-call-arptables - BOOLEAN
1041 1 : pass bridged ARP traffic to arptables' FORWARD chain.
1045 bridge-nf-call-iptables - BOOLEAN
1046 1 : pass bridged IPv4 traffic to iptables' chains.
1050 bridge-nf-call-ip6tables - BOOLEAN
1051 1 : pass bridged IPv6 traffic to ip6tables' chains.
1055 bridge-nf-filter-vlan-tagged - BOOLEAN
1056 1 : pass bridged vlan-tagged ARP/IP/IPv6 traffic to {arp,ip,ip6}tables.
1060 bridge-nf-filter-pppoe-tagged - BOOLEAN
1061 1 : pass bridged pppoe-tagged IP/IPv6 traffic to {ip,ip6}tables.
1066 proc/sys/net/sctp/* Variables:
1068 addip_enable - BOOLEAN
1069 Enable or disable extension of Dynamic Address Reconfiguration
1070 (ADD-IP) functionality specified in RFC5061. This extension provides
1071 the ability to dynamically add and remove new addresses for the SCTP
1074 1: Enable extension.
1076 0: Disable extension.
1080 addip_noauth_enable - BOOLEAN
1081 Dynamic Address Reconfiguration (ADD-IP) requires the use of
1082 authentication to protect the operations of adding or removing new
1083 addresses. This requirement is mandated so that unauthorized hosts
1084 would not be able to hijack associations. However, older
1085 implementations may not have implemented this requirement while
1086 allowing the ADD-IP extension. For reasons of interoperability,
1087 we provide this variable to control the enforcement of the
1088 authentication requirement.
1090 1: Allow ADD-IP extension to be used without authentication. This
1091 should only be set in a closed environment for interoperability
1092 with older implementations.
1094 0: Enforce the authentication requirement
1098 auth_enable - BOOLEAN
1099 Enable or disable Authenticated Chunks extension. This extension
1100 provides the ability to send and receive authenticated chunks and is
1101 required for secure operation of Dynamic Address Reconfiguration
1104 1: Enable this extension.
1105 0: Disable this extension.
1109 prsctp_enable - BOOLEAN
1110 Enable or disable the Partial Reliability extension (RFC3758) which
1111 is used to notify peers that a given DATA should no longer be expected.
1119 The limit of the number of new packets that can be initially sent. It
1120 controls how bursty the generated traffic can be.
1124 association_max_retrans - INTEGER
1125 Set the maximum number for retransmissions that an association can
1126 attempt deciding that the remote end is unreachable. If this value
1127 is exceeded, the association is terminated.
1131 max_init_retransmits - INTEGER
1132 The maximum number of retransmissions of INIT and COOKIE-ECHO chunks
1133 that an association will attempt before declaring the destination
1134 unreachable and terminating.
1138 path_max_retrans - INTEGER
1139 The maximum number of retransmissions that will be attempted on a given
1140 path. Once this threshold is exceeded, the path is considered
1141 unreachable, and new traffic will use a different path when the
1142 association is multihomed.
1146 rto_initial - INTEGER
1147 The initial round trip timeout value in milliseconds that will be used
1148 in calculating round trip times. This is the initial time interval
1149 for retransmissions.
1154 The maximum value (in milliseconds) of the round trip timeout. This
1155 is the largest time interval that can elapse between retransmissions.
1160 The minimum value (in milliseconds) of the round trip timeout. This
1161 is the smallest time interval the can elapse between retransmissions.
1165 hb_interval - INTEGER
1166 The interval (in milliseconds) between HEARTBEAT chunks. These chunks
1167 are sent at the specified interval on idle paths to probe the state of
1168 a given path between 2 associations.
1172 sack_timeout - INTEGER
1173 The amount of time (in milliseconds) that the implementation will wait
1178 valid_cookie_life - INTEGER
1179 The default lifetime of the SCTP cookie (in milliseconds). The cookie
1180 is used during association establishment.
1184 cookie_preserve_enable - BOOLEAN
1185 Enable or disable the ability to extend the lifetime of the SCTP cookie
1186 that is used during the establishment phase of SCTP association
1188 1: Enable cookie lifetime extension.
1193 rcvbuf_policy - INTEGER
1194 Determines if the receive buffer is attributed to the socket or to
1195 association. SCTP supports the capability to create multiple
1196 associations on a single socket. When using this capability, it is
1197 possible that a single stalled association that's buffering a lot
1198 of data may block other associations from delivering their data by
1199 consuming all of the receive buffer space. To work around this,
1200 the rcvbuf_policy could be set to attribute the receiver buffer space
1201 to each association instead of the socket. This prevents the described
1204 1: rcvbuf space is per association
1205 0: recbuf space is per socket
1209 sndbuf_policy - INTEGER
1210 Similar to rcvbuf_policy above, this applies to send buffer space.
1212 1: Send buffer is tracked per association
1213 0: Send buffer is tracked per socket.
1217 sctp_mem - vector of 3 INTEGERs: min, pressure, max
1218 Number of pages allowed for queueing by all SCTP sockets.
1220 min: Below this number of pages SCTP is not bothered about its
1221 memory appetite. When amount of memory allocated by SCTP exceeds
1222 this number, SCTP starts to moderate memory usage.
1224 pressure: This value was introduced to follow format of tcp_mem.
1226 max: Number of pages allowed for queueing by all SCTP sockets.
1228 Default is calculated at boot time from amount of available memory.
1230 sctp_rmem - vector of 3 INTEGERs: min, default, max
1231 See tcp_rmem for a description.
1233 sctp_wmem - vector of 3 INTEGERs: min, default, max
1234 See tcp_wmem for a description.
1238 /proc/sys/net/core/*
1241 /proc/sys/net/unix/*
1242 max_dgram_qlen FIXME
1244 /proc/sys/net/irda/*
1245 fast_poll_increase FIXME
1246 warn_noreply_time FIXME
1247 discovery_slots FIXME
1250 discovery_timeout FIXME
1251 lap_keepalive_time FIXME
1252 max_noreply_time FIXME
1253 max_tx_data_size FIXME
1255 min_tx_turn_time FIXME