1/proc/sys/net/ipv4/* Variables: 2 3ip_forward - BOOLEAN 4 0 - disabled (default) 5 not 0 - enabled 6 7 Forward Packets between interfaces. 8 9 This variable is special, its change resets all configuration 10 parameters to their default state (RFC1122 for hosts, RFC1812 11 for routers) 12 13ip_default_ttl - INTEGER 14 Default value of TTL field (Time To Live) for outgoing (but not 15 forwarded) IP packets. Should be between 1 and 255 inclusive. 16 Default: 64 (as recommended by RFC1700) 17 18ip_no_pmtu_disc - INTEGER 19 Disable Path MTU Discovery. If enabled in mode 1 and a 20 fragmentation-required ICMP is received, the PMTU to this 21 destination will be set to min_pmtu (see below). You will need 22 to raise min_pmtu to the smallest interface MTU on your system 23 manually if you want to avoid locally generated fragments. 24 25 In mode 2 incoming Path MTU Discovery messages will be 26 discarded. Outgoing frames are handled the same as in mode 1, 27 implicitly setting IP_PMTUDISC_DONT on every created socket. 28 29 Mode 3 is a hardend pmtu discover mode. The kernel will only 30 accept fragmentation-needed errors if the underlying protocol 31 can verify them besides a plain socket lookup. Current 32 protocols for which pmtu events will be honored are TCP, SCTP 33 and DCCP as they verify e.g. the sequence number or the 34 association. This mode should not be enabled globally but is 35 only intended to secure e.g. name servers in namespaces where 36 TCP path mtu must still work but path MTU information of other 37 protocols should be discarded. If enabled globally this mode 38 could break other protocols. 39 40 Possible values: 0-3 41 Default: FALSE 42 43min_pmtu - INTEGER 44 default 552 - minimum discovered Path MTU 45 46ip_forward_use_pmtu - BOOLEAN 47 By default we don't trust protocol path MTUs while forwarding 48 because they could be easily forged and can lead to unwanted 49 fragmentation by the router. 50 You only need to enable this if you have user-space software 51 which tries to discover path mtus by itself and depends on the 52 kernel honoring this information. This is normally not the 53 case. 54 Default: 0 (disabled) 55 Possible values: 56 0 - disabled 57 1 - enabled 58 59fwmark_reflect - BOOLEAN 60 Controls the fwmark of kernel-generated IPv4 reply packets that are not 61 associated with a socket for example, TCP RSTs or ICMP echo replies). 62 If unset, these packets have a fwmark of zero. If set, they have the 63 fwmark of the packet they are replying to. 64 Default: 0 65 66route/max_size - INTEGER 67 Maximum number of routes allowed in the kernel. Increase 68 this when using large numbers of interfaces and/or routes. 69 From linux kernel 3.6 onwards, this is deprecated for ipv4 70 as route cache is no longer used. 71 72neigh/default/gc_thresh1 - INTEGER 73 Minimum number of entries to keep. Garbage collector will not 74 purge entries if there are fewer than this number. 75 Default: 128 76 77neigh/default/gc_thresh2 - INTEGER 78 Threshold when garbage collector becomes more aggressive about 79 purging entries. Entries older than 5 seconds will be cleared 80 when over this number. 81 Default: 512 82 83neigh/default/gc_thresh3 - INTEGER 84 Maximum number of neighbor entries allowed. Increase this 85 when using large numbers of interfaces and when communicating 86 with large numbers of directly-connected peers. 87 Default: 1024 88 89neigh/default/unres_qlen_bytes - INTEGER 90 The maximum number of bytes which may be used by packets 91 queued for each unresolved address by other network layers. 92 (added in linux 3.3) 93 Setting negative value is meaningless and will return error. 94 Default: 65536 Bytes(64KB) 95 96neigh/default/unres_qlen - INTEGER 97 The maximum number of packets which may be queued for each 98 unresolved address by other network layers. 99 (deprecated in linux 3.3) : use unres_qlen_bytes instead. 100 Prior to linux 3.3, the default value is 3 which may cause 101 unexpected packet loss. The current default value is calculated 102 according to default value of unres_qlen_bytes and true size of 103 packet. 104 Default: 31 105 106mtu_expires - INTEGER 107 Time, in seconds, that cached PMTU information is kept. 108 109min_adv_mss - INTEGER 110 The advertised MSS depends on the first hop route MTU, but will 111 never be lower than this setting. 112 113IP Fragmentation: 114 115ipfrag_high_thresh - INTEGER 116 Maximum memory used to reassemble IP fragments. When 117 ipfrag_high_thresh bytes of memory is allocated for this purpose, 118 the fragment handler will toss packets until ipfrag_low_thresh 119 is reached. This also serves as a maximum limit to namespaces 120 different from the initial one. 121 122ipfrag_low_thresh - INTEGER 123 Maximum memory used to reassemble IP fragments before the kernel 124 begins to remove incomplete fragment queues to free up resources. 125 The kernel still accepts new fragments for defragmentation. 126 127ipfrag_time - INTEGER 128 Time in seconds to keep an IP fragment in memory. 129 130ipfrag_max_dist - INTEGER 131 ipfrag_max_dist is a non-negative integer value which defines the 132 maximum "disorder" which is allowed among fragments which share a 133 common IP source address. Note that reordering of packets is 134 not unusual, but if a large number of fragments arrive from a source 135 IP address while a particular fragment queue remains incomplete, it 136 probably indicates that one or more fragments belonging to that queue 137 have been lost. When ipfrag_max_dist is positive, an additional check 138 is done on fragments before they are added to a reassembly queue - if 139 ipfrag_max_dist (or more) fragments have arrived from a particular IP 140 address between additions to any IP fragment queue using that source 141 address, it's presumed that one or more fragments in the queue are 142 lost. The existing fragment queue will be dropped, and a new one 143 started. An ipfrag_max_dist value of zero disables this check. 144 145 Using a very small value, e.g. 1 or 2, for ipfrag_max_dist can 146 result in unnecessarily dropping fragment queues when normal 147 reordering of packets occurs, which could lead to poor application 148 performance. Using a very large value, e.g. 50000, increases the 149 likelihood of incorrectly reassembling IP fragments that originate 150 from different IP datagrams, which could result in data corruption. 151 Default: 64 152 153INET peer storage: 154 155inet_peer_threshold - INTEGER 156 The approximate size of the storage. Starting from this threshold 157 entries will be thrown aggressively. This threshold also determines 158 entries' time-to-live and time intervals between garbage collection 159 passes. More entries, less time-to-live, less GC interval. 160 161inet_peer_minttl - INTEGER 162 Minimum time-to-live of entries. Should be enough to cover fragment 163 time-to-live on the reassembling side. This minimum time-to-live is 164 guaranteed if the pool size is less than inet_peer_threshold. 165 Measured in seconds. 166 167inet_peer_maxttl - INTEGER 168 Maximum time-to-live of entries. Unused entries will expire after 169 this period of time if there is no memory pressure on the pool (i.e. 170 when the number of entries in the pool is very small). 171 Measured in seconds. 172 173TCP variables: 174 175somaxconn - INTEGER 176 Limit of socket listen() backlog, known in userspace as SOMAXCONN. 177 Defaults to 128. See also tcp_max_syn_backlog for additional tuning 178 for TCP sockets. 179 180tcp_abort_on_overflow - BOOLEAN 181 If listening service is too slow to accept new connections, 182 reset them. Default state is FALSE. It means that if overflow 183 occurred due to a burst, connection will recover. Enable this 184 option _only_ if you are really sure that listening daemon 185 cannot be tuned to accept connections faster. Enabling this 186 option can harm clients of your server. 187 188tcp_adv_win_scale - INTEGER 189 Count buffering overhead as bytes/2^tcp_adv_win_scale 190 (if tcp_adv_win_scale > 0) or bytes-bytes/2^(-tcp_adv_win_scale), 191 if it is <= 0. 192 Possible values are [-31, 31], inclusive. 193 Default: 1 194 195tcp_allowed_congestion_control - STRING 196 Show/set the congestion control choices available to non-privileged 197 processes. The list is a subset of those listed in 198 tcp_available_congestion_control. 199 Default is "reno" and the default setting (tcp_congestion_control). 200 201tcp_app_win - INTEGER 202 Reserve max(window/2^tcp_app_win, mss) of window for application 203 buffer. Value 0 is special, it means that nothing is reserved. 204 Default: 31 205 206tcp_autocorking - BOOLEAN 207 Enable TCP auto corking : 208 When applications do consecutive small write()/sendmsg() system calls, 209 we try to coalesce these small writes as much as possible, to lower 210 total amount of sent packets. This is done if at least one prior 211 packet for the flow is waiting in Qdisc queues or device transmit 212 queue. Applications can still use TCP_CORK for optimal behavior 213 when they know how/when to uncork their sockets. 214 Default : 1 215 216tcp_available_congestion_control - STRING 217 Shows the available congestion control choices that are registered. 218 More congestion control algorithms may be available as modules, 219 but not loaded. 220 221tcp_base_mss - INTEGER 222 The initial value of search_low to be used by the packetization layer 223 Path MTU discovery (MTU probing). If MTU probing is enabled, 224 this is the initial MSS used by the connection. 225 226tcp_congestion_control - STRING 227 Set the congestion control algorithm to be used for new 228 connections. The algorithm "reno" is always available, but 229 additional choices may be available based on kernel configuration. 230 Default is set as part of kernel configuration. 231 For passive connections, the listener congestion control choice 232 is inherited. 233 [see setsockopt(listenfd, SOL_TCP, TCP_CONGESTION, "name" ...) ] 234 235tcp_dsack - BOOLEAN 236 Allows TCP to send "duplicate" SACKs. 237 238tcp_early_retrans - INTEGER 239 Enable Early Retransmit (ER), per RFC 5827. ER lowers the threshold 240 for triggering fast retransmit when the amount of outstanding data is 241 small and when no previously unsent data can be transmitted (such 242 that limited transmit could be used). Also controls the use of 243 Tail loss probe (TLP) that converts RTOs occurring due to tail 244 losses into fast recovery (draft-dukkipati-tcpm-tcp-loss-probe-01). 245 Possible values: 246 0 disables ER 247 1 enables ER 248 2 enables ER but delays fast recovery and fast retransmit 249 by a fourth of RTT. This mitigates connection falsely 250 recovers when network has a small degree of reordering 251 (less than 3 packets). 252 3 enables delayed ER and TLP. 253 4 enables TLP only. 254 Default: 3 255 256tcp_ecn - INTEGER 257 Control use of Explicit Congestion Notification (ECN) by TCP. 258 ECN is used only when both ends of the TCP connection indicate 259 support for it. This feature is useful in avoiding losses due 260 to congestion by allowing supporting routers to signal 261 congestion before having to drop packets. 262 Possible values are: 263 0 Disable ECN. Neither initiate nor accept ECN. 264 1 Enable ECN when requested by incoming connections and 265 also request ECN on outgoing connection attempts. 266 2 Enable ECN when requested by incoming connections 267 but do not request ECN on outgoing connections. 268 Default: 2 269 270tcp_fack - BOOLEAN 271 Enable FACK congestion avoidance and fast retransmission. 272 The value is not used, if tcp_sack is not enabled. 273 274tcp_fin_timeout - INTEGER 275 The length of time an orphaned (no longer referenced by any 276 application) connection will remain in the FIN_WAIT_2 state 277 before it is aborted at the local end. While a perfectly 278 valid "receive only" state for an un-orphaned connection, an 279 orphaned connection in FIN_WAIT_2 state could otherwise wait 280 forever for the remote to close its end of the connection. 281 Cf. tcp_max_orphans 282 Default: 60 seconds 283 284tcp_frto - INTEGER 285 Enables Forward RTO-Recovery (F-RTO) defined in RFC5682. 286 F-RTO is an enhanced recovery algorithm for TCP retransmission 287 timeouts. It is particularly beneficial in networks where the 288 RTT fluctuates (e.g., wireless). F-RTO is sender-side only 289 modification. It does not require any support from the peer. 290 291 By default it's enabled with a non-zero value. 0 disables F-RTO. 292 293tcp_invalid_ratelimit - INTEGER 294 Limit the maximal rate for sending duplicate acknowledgments 295 in response to incoming TCP packets that are for an existing 296 connection but that are invalid due to any of these reasons: 297 298 (a) out-of-window sequence number, 299 (b) out-of-window acknowledgment number, or 300 (c) PAWS (Protection Against Wrapped Sequence numbers) check failure 301 302 This can help mitigate simple "ack loop" DoS attacks, wherein 303 a buggy or malicious middlebox or man-in-the-middle can 304 rewrite TCP header fields in manner that causes each endpoint 305 to think that the other is sending invalid TCP segments, thus 306 causing each side to send an unterminating stream of duplicate 307 acknowledgments for invalid segments. 308 309 Using 0 disables rate-limiting of dupacks in response to 310 invalid segments; otherwise this value specifies the minimal 311 space between sending such dupacks, in milliseconds. 312 313 Default: 500 (milliseconds). 314 315tcp_keepalive_time - INTEGER 316 How often TCP sends out keepalive messages when keepalive is enabled. 317 Default: 2hours. 318 319tcp_keepalive_probes - INTEGER 320 How many keepalive probes TCP sends out, until it decides that the 321 connection is broken. Default value: 9. 322 323tcp_keepalive_intvl - INTEGER 324 How frequently the probes are send out. Multiplied by 325 tcp_keepalive_probes it is time to kill not responding connection, 326 after probes started. Default value: 75sec i.e. connection 327 will be aborted after ~11 minutes of retries. 328 329tcp_low_latency - BOOLEAN 330 If set, the TCP stack makes decisions that prefer lower 331 latency as opposed to higher throughput. By default, this 332 option is not set meaning that higher throughput is preferred. 333 An example of an application where this default should be 334 changed would be a Beowulf compute cluster. 335 Default: 0 336 337tcp_max_orphans - INTEGER 338 Maximal number of TCP sockets not attached to any user file handle, 339 held by system. If this number is exceeded orphaned connections are 340 reset immediately and warning is printed. This limit exists 341 only to prevent simple DoS attacks, you _must_ not rely on this 342 or lower the limit artificially, but rather increase it 343 (probably, after increasing installed memory), 344 if network conditions require more than default value, 345 and tune network services to linger and kill such states 346 more aggressively. Let me to remind again: each orphan eats 347 up to ~64K of unswappable memory. 348 349tcp_max_syn_backlog - INTEGER 350 Maximal number of remembered connection requests, which have not 351 received an acknowledgment from connecting client. 352 The minimal value is 128 for low memory machines, and it will 353 increase in proportion to the memory of machine. 354 If server suffers from overload, try increasing this number. 355 356tcp_max_tw_buckets - INTEGER 357 Maximal number of timewait sockets held by system simultaneously. 358 If this number is exceeded time-wait socket is immediately destroyed 359 and warning is printed. This limit exists only to prevent 360 simple DoS attacks, you _must_ not lower the limit artificially, 361 but rather increase it (probably, after increasing installed memory), 362 if network conditions require more than default value. 363 364tcp_mem - vector of 3 INTEGERs: min, pressure, max 365 min: below this number of pages TCP is not bothered about its 366 memory appetite. 367 368 pressure: when amount of memory allocated by TCP exceeds this number 369 of pages, TCP moderates its memory consumption and enters memory 370 pressure mode, which is exited when memory consumption falls 371 under "min". 372 373 max: number of pages allowed for queueing by all TCP sockets. 374 375 Defaults are calculated at boot time from amount of available 376 memory. 377 378tcp_moderate_rcvbuf - BOOLEAN 379 If set, TCP performs receive buffer auto-tuning, attempting to 380 automatically size the buffer (no greater than tcp_rmem[2]) to 381 match the size required by the path for full throughput. Enabled by 382 default. 383 384tcp_mtu_probing - INTEGER 385 Controls TCP Packetization-Layer Path MTU Discovery. Takes three 386 values: 387 0 - Disabled 388 1 - Disabled by default, enabled when an ICMP black hole detected 389 2 - Always enabled, use initial MSS of tcp_base_mss. 390 391tcp_probe_interval - INTEGER 392 Controls how often to start TCP Packetization-Layer Path MTU 393 Discovery reprobe. The default is reprobing every 10 minutes as 394 per RFC4821. 395 396tcp_probe_threshold - INTEGER 397 Controls when TCP Packetization-Layer Path MTU Discovery probing 398 will stop in respect to the width of search range in bytes. Default 399 is 8 bytes. 400 401tcp_no_metrics_save - BOOLEAN 402 By default, TCP saves various connection metrics in the route cache 403 when the connection closes, so that connections established in the 404 near future can use these to set initial conditions. Usually, this 405 increases overall performance, but may sometimes cause performance 406 degradation. If set, TCP will not cache metrics on closing 407 connections. 408 409tcp_orphan_retries - INTEGER 410 This value influences the timeout of a locally closed TCP connection, 411 when RTO retransmissions remain unacknowledged. 412 See tcp_retries2 for more details. 413 414 The default value is 8. 415 If your machine is a loaded WEB server, 416 you should think about lowering this value, such sockets 417 may consume significant resources. Cf. tcp_max_orphans. 418 419tcp_reordering - INTEGER 420 Initial reordering level of packets in a TCP stream. 421 TCP stack can then dynamically adjust flow reordering level 422 between this initial value and tcp_max_reordering 423 Default: 3 424 425tcp_max_reordering - INTEGER 426 Maximal reordering level of packets in a TCP stream. 427 300 is a fairly conservative value, but you might increase it 428 if paths are using per packet load balancing (like bonding rr mode) 429 Default: 300 430 431tcp_retrans_collapse - BOOLEAN 432 Bug-to-bug compatibility with some broken printers. 433 On retransmit try to send bigger packets to work around bugs in 434 certain TCP stacks. 435 436tcp_retries1 - INTEGER 437 This value influences the time, after which TCP decides, that 438 something is wrong due to unacknowledged RTO retransmissions, 439 and reports this suspicion to the network layer. 440 See tcp_retries2 for more details. 441 442 RFC 1122 recommends at least 3 retransmissions, which is the 443 default. 444 445tcp_retries2 - INTEGER 446 This value influences the timeout of an alive TCP connection, 447 when RTO retransmissions remain unacknowledged. 448 Given a value of N, a hypothetical TCP connection following 449 exponential backoff with an initial RTO of TCP_RTO_MIN would 450 retransmit N times before killing the connection at the (N+1)th RTO. 451 452 The default value of 15 yields a hypothetical timeout of 924.6 453 seconds and is a lower bound for the effective timeout. 454 TCP will effectively time out at the first RTO which exceeds the 455 hypothetical timeout. 456 457 RFC 1122 recommends at least 100 seconds for the timeout, 458 which corresponds to a value of at least 8. 459 460tcp_rfc1337 - BOOLEAN 461 If set, the TCP stack behaves conforming to RFC1337. If unset, 462 we are not conforming to RFC, but prevent TCP TIME_WAIT 463 assassination. 464 Default: 0 465 466tcp_rmem - vector of 3 INTEGERs: min, default, max 467 min: Minimal size of receive buffer used by TCP sockets. 468 It is guaranteed to each TCP socket, even under moderate memory 469 pressure. 470 Default: 1 page 471 472 default: initial size of receive buffer used by TCP sockets. 473 This value overrides net.core.rmem_default used by other protocols. 474 Default: 87380 bytes. This value results in window of 65535 with 475 default setting of tcp_adv_win_scale and tcp_app_win:0 and a bit 476 less for default tcp_app_win. See below about these variables. 477 478 max: maximal size of receive buffer allowed for automatically 479 selected receiver buffers for TCP socket. This value does not override 480 net.core.rmem_max. Calling setsockopt() with SO_RCVBUF disables 481 automatic tuning of that socket's receive buffer size, in which 482 case this value is ignored. 483 Default: between 87380B and 6MB, depending on RAM size. 484 485tcp_sack - BOOLEAN 486 Enable select acknowledgments (SACKS). 487 488tcp_slow_start_after_idle - BOOLEAN 489 If set, provide RFC2861 behavior and time out the congestion 490 window after an idle period. An idle period is defined at 491 the current RTO. If unset, the congestion window will not 492 be timed out after an idle period. 493 Default: 1 494 495tcp_stdurg - BOOLEAN 496 Use the Host requirements interpretation of the TCP urgent pointer field. 497 Most hosts use the older BSD interpretation, so if you turn this on 498 Linux might not communicate correctly with them. 499 Default: FALSE 500 501tcp_synack_retries - INTEGER 502 Number of times SYNACKs for a passive TCP connection attempt will 503 be retransmitted. Should not be higher than 255. Default value 504 is 5, which corresponds to 31seconds till the last retransmission 505 with the current initial RTO of 1second. With this the final timeout 506 for a passive TCP connection will happen after 63seconds. 507 508tcp_syncookies - BOOLEAN 509 Only valid when the kernel was compiled with CONFIG_SYN_COOKIES 510 Send out syncookies when the syn backlog queue of a socket 511 overflows. This is to prevent against the common 'SYN flood attack' 512 Default: 1 513 514 Note, that syncookies is fallback facility. 515 It MUST NOT be used to help highly loaded servers to stand 516 against legal connection rate. If you see SYN flood warnings 517 in your logs, but investigation shows that they occur 518 because of overload with legal connections, you should tune 519 another parameters until this warning disappear. 520 See: tcp_max_syn_backlog, tcp_synack_retries, tcp_abort_on_overflow. 521 522 syncookies seriously violate TCP protocol, do not allow 523 to use TCP extensions, can result in serious degradation 524 of some services (f.e. SMTP relaying), visible not by you, 525 but your clients and relays, contacting you. While you see 526 SYN flood warnings in logs not being really flooded, your server 527 is seriously misconfigured. 528 529 If you want to test which effects syncookies have to your 530 network connections you can set this knob to 2 to enable 531 unconditionally generation of syncookies. 532 533tcp_fastopen - INTEGER 534 Enable TCP Fast Open feature (draft-ietf-tcpm-fastopen) to send data 535 in the opening SYN packet. To use this feature, the client application 536 must use sendmsg() or sendto() with MSG_FASTOPEN flag rather than 537 connect() to perform a TCP handshake automatically. 538 539 The values (bitmap) are 540 1: Enables sending data in the opening SYN on the client w/ MSG_FASTOPEN. 541 2: Enables TCP Fast Open on the server side, i.e., allowing data in 542 a SYN packet to be accepted and passed to the application before 543 3-way hand shake finishes. 544 4: Send data in the opening SYN regardless of cookie availability and 545 without a cookie option. 546 0x100: Accept SYN data w/o validating the cookie. 547 0x200: Accept data-in-SYN w/o any cookie option present. 548 0x400/0x800: Enable Fast Open on all listeners regardless of the 549 TCP_FASTOPEN socket option. The two different flags designate two 550 different ways of setting max_qlen without the TCP_FASTOPEN socket 551 option. 552 553 Default: 1 554 555 Note that the client & server side Fast Open flags (1 and 2 556 respectively) must be also enabled before the rest of flags can take 557 effect. 558 559 See include/net/tcp.h and the code for more details. 560 561tcp_syn_retries - INTEGER 562 Number of times initial SYNs for an active TCP connection attempt 563 will be retransmitted. Should not be higher than 255. Default value 564 is 6, which corresponds to 63seconds till the last retransmission 565 with the current initial RTO of 1second. With this the final timeout 566 for an active TCP connection attempt will happen after 127seconds. 567 568tcp_timestamps - BOOLEAN 569 Enable timestamps as defined in RFC1323. 570 571tcp_min_tso_segs - INTEGER 572 Minimal number of segments per TSO frame. 573 Since linux-3.12, TCP does an automatic sizing of TSO frames, 574 depending on flow rate, instead of filling 64Kbytes packets. 575 For specific usages, it's possible to force TCP to build big 576 TSO frames. Note that TCP stack might split too big TSO packets 577 if available window is too small. 578 Default: 2 579 580tcp_tso_win_divisor - INTEGER 581 This allows control over what percentage of the congestion window 582 can be consumed by a single TSO frame. 583 The setting of this parameter is a choice between burstiness and 584 building larger TSO frames. 585 Default: 3 586 587tcp_tw_recycle - BOOLEAN 588 Enable fast recycling TIME-WAIT sockets. Default value is 0. 589 It should not be changed without advice/request of technical 590 experts. 591 592tcp_tw_reuse - BOOLEAN 593 Allow to reuse TIME-WAIT sockets for new connections when it is 594 safe from protocol viewpoint. Default value is 0. 595 It should not be changed without advice/request of technical 596 experts. 597 598tcp_window_scaling - BOOLEAN 599 Enable window scaling as defined in RFC1323. 600 601tcp_wmem - vector of 3 INTEGERs: min, default, max 602 min: Amount of memory reserved for send buffers for TCP sockets. 603 Each TCP socket has rights to use it due to fact of its birth. 604 Default: 1 page 605 606 default: initial size of send buffer used by TCP sockets. This 607 value overrides net.core.wmem_default used by other protocols. 608 It is usually lower than net.core.wmem_default. 609 Default: 16K 610 611 max: Maximal amount of memory allowed for automatically tuned 612 send buffers for TCP sockets. This value does not override 613 net.core.wmem_max. Calling setsockopt() with SO_SNDBUF disables 614 automatic tuning of that socket's send buffer size, in which case 615 this value is ignored. 616 Default: between 64K and 4MB, depending on RAM size. 617 618tcp_notsent_lowat - UNSIGNED INTEGER 619 A TCP socket can control the amount of unsent bytes in its write queue, 620 thanks to TCP_NOTSENT_LOWAT socket option. poll()/select()/epoll() 621 reports POLLOUT events if the amount of unsent bytes is below a per 622 socket value, and if the write queue is not full. sendmsg() will 623 also not add new buffers if the limit is hit. 624 625 This global variable controls the amount of unsent data for 626 sockets not using TCP_NOTSENT_LOWAT. For these sockets, a change 627 to the global variable has immediate effect. 628 629 Default: UINT_MAX (0xFFFFFFFF) 630 631tcp_workaround_signed_windows - BOOLEAN 632 If set, assume no receipt of a window scaling option means the 633 remote TCP is broken and treats the window as a signed quantity. 634 If unset, assume the remote TCP is not broken even if we do 635 not receive a window scaling option from them. 636 Default: 0 637 638tcp_thin_linear_timeouts - BOOLEAN 639 Enable dynamic triggering of linear timeouts for thin streams. 640 If set, a check is performed upon retransmission by timeout to 641 determine if the stream is thin (less than 4 packets in flight). 642 As long as the stream is found to be thin, up to 6 linear 643 timeouts may be performed before exponential backoff mode is 644 initiated. This improves retransmission latency for 645 non-aggressive thin streams, often found to be time-dependent. 646 For more information on thin streams, see 647 Documentation/networking/tcp-thin.txt 648 Default: 0 649 650tcp_thin_dupack - BOOLEAN 651 Enable dynamic triggering of retransmissions after one dupACK 652 for thin streams. If set, a check is performed upon reception 653 of a dupACK to determine if the stream is thin (less than 4 654 packets in flight). As long as the stream is found to be thin, 655 data is retransmitted on the first received dupACK. This 656 improves retransmission latency for non-aggressive thin 657 streams, often found to be time-dependent. 658 For more information on thin streams, see 659 Documentation/networking/tcp-thin.txt 660 Default: 0 661 662tcp_limit_output_bytes - INTEGER 663 Controls TCP Small Queue limit per tcp socket. 664 TCP bulk sender tends to increase packets in flight until it 665 gets losses notifications. With SNDBUF autotuning, this can 666 result in a large amount of packets queued in qdisc/device 667 on the local machine, hurting latency of other flows, for 668 typical pfifo_fast qdiscs. 669 tcp_limit_output_bytes limits the number of bytes on qdisc 670 or device to reduce artificial RTT/cwnd and reduce bufferbloat. 671 Default: 131072 672 673tcp_challenge_ack_limit - INTEGER 674 Limits number of Challenge ACK sent per second, as recommended 675 in RFC 5961 (Improving TCP's Robustness to Blind In-Window Attacks) 676 Default: 100 677 678UDP variables: 679 680udp_mem - vector of 3 INTEGERs: min, pressure, max 681 Number of pages allowed for queueing by all UDP sockets. 682 683 min: Below this number of pages UDP is not bothered about its 684 memory appetite. When amount of memory allocated by UDP exceeds 685 this number, UDP starts to moderate memory usage. 686 687 pressure: This value was introduced to follow format of tcp_mem. 688 689 max: Number of pages allowed for queueing by all UDP sockets. 690 691 Default is calculated at boot time from amount of available memory. 692 693udp_rmem_min - INTEGER 694 Minimal size of receive buffer used by UDP sockets in moderation. 695 Each UDP socket is able to use the size for receiving data, even if 696 total pages of UDP sockets exceed udp_mem pressure. The unit is byte. 697 Default: 1 page 698 699udp_wmem_min - INTEGER 700 Minimal size of send buffer used by UDP sockets in moderation. 701 Each UDP socket is able to use the size for sending data, even if 702 total pages of UDP sockets exceed udp_mem pressure. The unit is byte. 703 Default: 1 page 704 705CIPSOv4 Variables: 706 707cipso_cache_enable - BOOLEAN 708 If set, enable additions to and lookups from the CIPSO label mapping 709 cache. If unset, additions are ignored and lookups always result in a 710 miss. However, regardless of the setting the cache is still 711 invalidated when required when means you can safely toggle this on and 712 off and the cache will always be "safe". 713 Default: 1 714 715cipso_cache_bucket_size - INTEGER 716 The CIPSO label cache consists of a fixed size hash table with each 717 hash bucket containing a number of cache entries. This variable limits 718 the number of entries in each hash bucket; the larger the value the 719 more CIPSO label mappings that can be cached. When the number of 720 entries in a given hash bucket reaches this limit adding new entries 721 causes the oldest entry in the bucket to be removed to make room. 722 Default: 10 723 724cipso_rbm_optfmt - BOOLEAN 725 Enable the "Optimized Tag 1 Format" as defined in section 3.4.2.6 of 726 the CIPSO draft specification (see Documentation/netlabel for details). 727 This means that when set the CIPSO tag will be padded with empty 728 categories in order to make the packet data 32-bit aligned. 729 Default: 0 730 731cipso_rbm_structvalid - BOOLEAN 732 If set, do a very strict check of the CIPSO option when 733 ip_options_compile() is called. If unset, relax the checks done during 734 ip_options_compile(). Either way is "safe" as errors are caught else 735 where in the CIPSO processing code but setting this to 0 (False) should 736 result in less work (i.e. it should be faster) but could cause problems 737 with other implementations that require strict checking. 738 Default: 0 739 740IP Variables: 741 742ip_local_port_range - 2 INTEGERS 743 Defines the local port range that is used by TCP and UDP to 744 choose the local port. The first number is the first, the 745 second the last local port number. The default values are 746 32768 and 61000 respectively. 747 748ip_local_reserved_ports - list of comma separated ranges 749 Specify the ports which are reserved for known third-party 750 applications. These ports will not be used by automatic port 751 assignments (e.g. when calling connect() or bind() with port 752 number 0). Explicit port allocation behavior is unchanged. 753 754 The format used for both input and output is a comma separated 755 list of ranges (e.g. "1,2-4,10-10" for ports 1, 2, 3, 4 and 756 10). Writing to the file will clear all previously reserved 757 ports and update the current list with the one given in the 758 input. 759 760 Note that ip_local_port_range and ip_local_reserved_ports 761 settings are independent and both are considered by the kernel 762 when determining which ports are available for automatic port 763 assignments. 764 765 You can reserve ports which are not in the current 766 ip_local_port_range, e.g.: 767 768 $ cat /proc/sys/net/ipv4/ip_local_port_range 769 32000 61000 770 $ cat /proc/sys/net/ipv4/ip_local_reserved_ports 771 8080,9148 772 773 although this is redundant. However such a setting is useful 774 if later the port range is changed to a value that will 775 include the reserved ports. 776 777 Default: Empty 778 779ip_nonlocal_bind - BOOLEAN 780 If set, allows processes to bind() to non-local IP addresses, 781 which can be quite useful - but may break some applications. 782 Default: 0 783 784ip_dynaddr - BOOLEAN 785 If set non-zero, enables support for dynamic addresses. 786 If set to a non-zero value larger than 1, a kernel log 787 message will be printed when dynamic address rewriting 788 occurs. 789 Default: 0 790 791ip_early_demux - BOOLEAN 792 Optimize input packet processing down to one demux for 793 certain kinds of local sockets. Currently we only do this 794 for established TCP sockets. 795 796 It may add an additional cost for pure routing workloads that 797 reduces overall throughput, in such case you should disable it. 798 Default: 1 799 800icmp_echo_ignore_all - BOOLEAN 801 If set non-zero, then the kernel will ignore all ICMP ECHO 802 requests sent to it. 803 Default: 0 804 805icmp_echo_ignore_broadcasts - BOOLEAN 806 If set non-zero, then the kernel will ignore all ICMP ECHO and 807 TIMESTAMP requests sent to it via broadcast/multicast. 808 Default: 1 809 810icmp_ratelimit - INTEGER 811 Limit the maximal rates for sending ICMP packets whose type matches 812 icmp_ratemask (see below) to specific targets. 813 0 to disable any limiting, 814 otherwise the minimal space between responses in milliseconds. 815 Note that another sysctl, icmp_msgs_per_sec limits the number 816 of ICMP packets sent on all targets. 817 Default: 1000 818 819icmp_msgs_per_sec - INTEGER 820 Limit maximal number of ICMP packets sent per second from this host. 821 Only messages whose type matches icmp_ratemask (see below) are 822 controlled by this limit. 823 Default: 1000 824 825icmp_msgs_burst - INTEGER 826 icmp_msgs_per_sec controls number of ICMP packets sent per second, 827 while icmp_msgs_burst controls the burst size of these packets. 828 Default: 50 829 830icmp_ratemask - INTEGER 831 Mask made of ICMP types for which rates are being limited. 832 Significant bits: IHGFEDCBA9876543210 833 Default mask: 0000001100000011000 (6168) 834 835 Bit definitions (see include/linux/icmp.h): 836 0 Echo Reply 837 3 Destination Unreachable * 838 4 Source Quench * 839 5 Redirect 840 8 Echo Request 841 B Time Exceeded * 842 C Parameter Problem * 843 D Timestamp Request 844 E Timestamp Reply 845 F Info Request 846 G Info Reply 847 H Address Mask Request 848 I Address Mask Reply 849 850 * These are rate limited by default (see default mask above) 851 852icmp_ignore_bogus_error_responses - BOOLEAN 853 Some routers violate RFC1122 by sending bogus responses to broadcast 854 frames. Such violations are normally logged via a kernel warning. 855 If this is set to TRUE, the kernel will not give such warnings, which 856 will avoid log file clutter. 857 Default: 1 858 859icmp_errors_use_inbound_ifaddr - BOOLEAN 860 861 If zero, icmp error messages are sent with the primary address of 862 the exiting interface. 863 864 If non-zero, the message will be sent with the primary address of 865 the interface that received the packet that caused the icmp error. 866 This is the behaviour network many administrators will expect from 867 a router. And it can make debugging complicated network layouts 868 much easier. 869 870 Note that if no primary address exists for the interface selected, 871 then the primary address of the first non-loopback interface that 872 has one will be used regardless of this setting. 873 874 Default: 0 875 876igmp_max_memberships - INTEGER 877 Change the maximum number of multicast groups we can subscribe to. 878 Default: 20 879 880 Theoretical maximum value is bounded by having to send a membership 881 report in a single datagram (i.e. the report can't span multiple 882 datagrams, or risk confusing the switch and leaving groups you don't 883 intend to). 884 885 The number of supported groups 'M' is bounded by the number of group 886 report entries you can fit into a single datagram of 65535 bytes. 887 888 M = 65536-sizeof (ip header)/(sizeof(Group record)) 889 890 Group records are variable length, with a minimum of 12 bytes. 891 So net.ipv4.igmp_max_memberships should not be set higher than: 892 893 (65536-24) / 12 = 5459 894 895 The value 5459 assumes no IP header options, so in practice 896 this number may be lower. 897 898 conf/interface/* changes special settings per interface (where 899 "interface" is the name of your network interface) 900 901 conf/all/* is special, changes the settings for all interfaces 902 903igmp_qrv - INTEGER 904 Controls the IGMP query robustness variable (see RFC2236 8.1). 905 Default: 2 (as specified by RFC2236 8.1) 906 Minimum: 1 (as specified by RFC6636 4.5) 907 908log_martians - BOOLEAN 909 Log packets with impossible addresses to kernel log. 910 log_martians for the interface will be enabled if at least one of 911 conf/{all,interface}/log_martians is set to TRUE, 912 it will be disabled otherwise 913 914accept_redirects - BOOLEAN 915 Accept ICMP redirect messages. 916 accept_redirects for the interface will be enabled if: 917 - both conf/{all,interface}/accept_redirects are TRUE in the case 918 forwarding for the interface is enabled 919 or 920 - at least one of conf/{all,interface}/accept_redirects is TRUE in the 921 case forwarding for the interface is disabled 922 accept_redirects for the interface will be disabled otherwise 923 default TRUE (host) 924 FALSE (router) 925 926forwarding - BOOLEAN 927 Enable IP forwarding on this interface. 928 929mc_forwarding - BOOLEAN 930 Do multicast routing. The kernel needs to be compiled with CONFIG_MROUTE 931 and a multicast routing daemon is required. 932 conf/all/mc_forwarding must also be set to TRUE to enable multicast 933 routing for the interface 934 935medium_id - INTEGER 936 Integer value used to differentiate the devices by the medium they 937 are attached to. Two devices can have different id values when 938 the broadcast packets are received only on one of them. 939 The default value 0 means that the device is the only interface 940 to its medium, value of -1 means that medium is not known. 941 942 Currently, it is used to change the proxy_arp behavior: 943 the proxy_arp feature is enabled for packets forwarded between 944 two devices attached to different media. 945 946proxy_arp - BOOLEAN 947 Do proxy arp. 948 proxy_arp for the interface will be enabled if at least one of 949 conf/{all,interface}/proxy_arp is set to TRUE, 950 it will be disabled otherwise 951 952proxy_arp_pvlan - BOOLEAN 953 Private VLAN proxy arp. 954 Basically allow proxy arp replies back to the same interface 955 (from which the ARP request/solicitation was received). 956 957 This is done to support (ethernet) switch features, like RFC 958 3069, where the individual ports are NOT allowed to 959 communicate with each other, but they are allowed to talk to 960 the upstream router. As described in RFC 3069, it is possible 961 to allow these hosts to communicate through the upstream 962 router by proxy_arp'ing. Don't need to be used together with 963 proxy_arp. 964 965 This technology is known by different names: 966 In RFC 3069 it is called VLAN Aggregation. 967 Cisco and Allied Telesyn call it Private VLAN. 968 Hewlett-Packard call it Source-Port filtering or port-isolation. 969 Ericsson call it MAC-Forced Forwarding (RFC Draft). 970 971shared_media - BOOLEAN 972 Send(router) or accept(host) RFC1620 shared media redirects. 973 Overrides ip_secure_redirects. 974 shared_media for the interface will be enabled if at least one of 975 conf/{all,interface}/shared_media is set to TRUE, 976 it will be disabled otherwise 977 default TRUE 978 979secure_redirects - BOOLEAN 980 Accept ICMP redirect messages only for gateways, 981 listed in default gateway list. 982 secure_redirects for the interface will be enabled if at least one of 983 conf/{all,interface}/secure_redirects is set to TRUE, 984 it will be disabled otherwise 985 default TRUE 986 987send_redirects - BOOLEAN 988 Send redirects, if router. 989 send_redirects for the interface will be enabled if at least one of 990 conf/{all,interface}/send_redirects is set to TRUE, 991 it will be disabled otherwise 992 Default: TRUE 993 994bootp_relay - BOOLEAN 995 Accept packets with source address 0.b.c.d destined 996 not to this host as local ones. It is supposed, that 997 BOOTP relay daemon will catch and forward such packets. 998 conf/all/bootp_relay must also be set to TRUE to enable BOOTP relay 999 for the interface 1000 default FALSE 1001 Not Implemented Yet. 1002 1003accept_source_route - BOOLEAN 1004 Accept packets with SRR option. 1005 conf/all/accept_source_route must also be set to TRUE to accept packets 1006 with SRR option on the interface 1007 default TRUE (router) 1008 FALSE (host) 1009 1010accept_local - BOOLEAN 1011 Accept packets with local source addresses. In combination with 1012 suitable routing, this can be used to direct packets between two 1013 local interfaces over the wire and have them accepted properly. 1014 default FALSE 1015 1016route_localnet - BOOLEAN 1017 Do not consider loopback addresses as martian source or destination 1018 while routing. This enables the use of 127/8 for local routing purposes. 1019 default FALSE 1020 1021rp_filter - INTEGER 1022 0 - No source validation. 1023 1 - Strict mode as defined in RFC3704 Strict Reverse Path 1024 Each incoming packet is tested against the FIB and if the interface 1025 is not the best reverse path the packet check will fail. 1026 By default failed packets are discarded. 1027 2 - Loose mode as defined in RFC3704 Loose Reverse Path 1028 Each incoming packet's source address is also tested against the FIB 1029 and if the source address is not reachable via any interface 1030 the packet check will fail. 1031 1032 Current recommended practice in RFC3704 is to enable strict mode 1033 to prevent IP spoofing from DDos attacks. If using asymmetric routing 1034 or other complicated routing, then loose mode is recommended. 1035 1036 The max value from conf/{all,interface}/rp_filter is used 1037 when doing source validation on the {interface}. 1038 1039 Default value is 0. Note that some distributions enable it 1040 in startup scripts. 1041 1042arp_filter - BOOLEAN 1043 1 - Allows you to have multiple network interfaces on the same 1044 subnet, and have the ARPs for each interface be answered 1045 based on whether or not the kernel would route a packet from 1046 the ARP'd IP out that interface (therefore you must use source 1047 based routing for this to work). In other words it allows control 1048 of which cards (usually 1) will respond to an arp request. 1049 1050 0 - (default) The kernel can respond to arp requests with addresses 1051 from other interfaces. This may seem wrong but it usually makes 1052 sense, because it increases the chance of successful communication. 1053 IP addresses are owned by the complete host on Linux, not by 1054 particular interfaces. Only for more complex setups like load- 1055 balancing, does this behaviour cause problems. 1056 1057 arp_filter for the interface will be enabled if at least one of 1058 conf/{all,interface}/arp_filter is set to TRUE, 1059 it will be disabled otherwise 1060 1061arp_announce - INTEGER 1062 Define different restriction levels for announcing the local 1063 source IP address from IP packets in ARP requests sent on 1064 interface: 1065 0 - (default) Use any local address, configured on any interface 1066 1 - Try to avoid local addresses that are not in the target's 1067 subnet for this interface. This mode is useful when target 1068 hosts reachable via this interface require the source IP 1069 address in ARP requests to be part of their logical network 1070 configured on the receiving interface. When we generate the 1071 request we will check all our subnets that include the 1072 target IP and will preserve the source address if it is from 1073 such subnet. If there is no such subnet we select source 1074 address according to the rules for level 2. 1075 2 - Always use the best local address for this target. 1076 In this mode we ignore the source address in the IP packet 1077 and try to select local address that we prefer for talks with 1078 the target host. Such local address is selected by looking 1079 for primary IP addresses on all our subnets on the outgoing 1080 interface that include the target IP address. If no suitable 1081 local address is found we select the first local address 1082 we have on the outgoing interface or on all other interfaces, 1083 with the hope we will receive reply for our request and 1084 even sometimes no matter the source IP address we announce. 1085 1086 The max value from conf/{all,interface}/arp_announce is used. 1087 1088 Increasing the restriction level gives more chance for 1089 receiving answer from the resolved target while decreasing 1090 the level announces more valid sender's information. 1091 1092arp_ignore - INTEGER 1093 Define different modes for sending replies in response to 1094 received ARP requests that resolve local target IP addresses: 1095 0 - (default): reply for any local target IP address, configured 1096 on any interface 1097 1 - reply only if the target IP address is local address 1098 configured on the incoming interface 1099 2 - reply only if the target IP address is local address 1100 configured on the incoming interface and both with the 1101 sender's IP address are part from same subnet on this interface 1102 3 - do not reply for local addresses configured with scope host, 1103 only resolutions for global and link addresses are replied 1104 4-7 - reserved 1105 8 - do not reply for all local addresses 1106 1107 The max value from conf/{all,interface}/arp_ignore is used 1108 when ARP request is received on the {interface} 1109 1110arp_notify - BOOLEAN 1111 Define mode for notification of address and device changes. 1112 0 - (default): do nothing 1113 1 - Generate gratuitous arp requests when device is brought up 1114 or hardware address changes. 1115 1116arp_accept - BOOLEAN 1117 Define behavior for gratuitous ARP frames who's IP is not 1118 already present in the ARP table: 1119 0 - don't create new entries in the ARP table 1120 1 - create new entries in the ARP table 1121 1122 Both replies and requests type gratuitous arp will trigger the 1123 ARP table to be updated, if this setting is on. 1124 1125 If the ARP table already contains the IP address of the 1126 gratuitous arp frame, the arp table will be updated regardless 1127 if this setting is on or off. 1128 1129mcast_solicit - INTEGER 1130 The maximum number of multicast probes in INCOMPLETE state, 1131 when the associated hardware address is unknown. Defaults 1132 to 3. 1133 1134ucast_solicit - INTEGER 1135 The maximum number of unicast probes in PROBE state, when 1136 the hardware address is being reconfirmed. Defaults to 3. 1137 1138app_solicit - INTEGER 1139 The maximum number of probes to send to the user space ARP daemon 1140 via netlink before dropping back to multicast probes (see 1141 mcast_resolicit). Defaults to 0. 1142 1143mcast_resolicit - INTEGER 1144 The maximum number of multicast probes after unicast and 1145 app probes in PROBE state. Defaults to 0. 1146 1147disable_policy - BOOLEAN 1148 Disable IPSEC policy (SPD) for this interface 1149 1150disable_xfrm - BOOLEAN 1151 Disable IPSEC encryption on this interface, whatever the policy 1152 1153igmpv2_unsolicited_report_interval - INTEGER 1154 The interval in milliseconds in which the next unsolicited 1155 IGMPv1 or IGMPv2 report retransmit will take place. 1156 Default: 10000 (10 seconds) 1157 1158igmpv3_unsolicited_report_interval - INTEGER 1159 The interval in milliseconds in which the next unsolicited 1160 IGMPv3 report retransmit will take place. 1161 Default: 1000 (1 seconds) 1162 1163promote_secondaries - BOOLEAN 1164 When a primary IP address is removed from this interface 1165 promote a corresponding secondary IP address instead of 1166 removing all the corresponding secondary IP addresses. 1167 1168 1169tag - INTEGER 1170 Allows you to write a number, which can be used as required. 1171 Default value is 0. 1172 1173Alexey Kuznetsov. 1174kuznet@ms2.inr.ac.ru 1175 1176Updated by: 1177Andi Kleen 1178ak@muc.de 1179Nicolas Delon 1180delon.nicolas@wanadoo.fr 1181 1182 1183 1184 1185/proc/sys/net/ipv6/* Variables: 1186 1187IPv6 has no global variables such as tcp_*. tcp_* settings under ipv4/ also 1188apply to IPv6 [XXX?]. 1189 1190bindv6only - BOOLEAN 1191 Default value for IPV6_V6ONLY socket option, 1192 which restricts use of the IPv6 socket to IPv6 communication 1193 only. 1194 TRUE: disable IPv4-mapped address feature 1195 FALSE: enable IPv4-mapped address feature 1196 1197 Default: FALSE (as specified in RFC3493) 1198 1199flowlabel_consistency - BOOLEAN 1200 Protect the consistency (and unicity) of flow label. 1201 You have to disable it to use IPV6_FL_F_REFLECT flag on the 1202 flow label manager. 1203 TRUE: enabled 1204 FALSE: disabled 1205 Default: TRUE 1206 1207auto_flowlabels - BOOLEAN 1208 Automatically generate flow labels based based on a flow hash 1209 of the packet. This allows intermediate devices, such as routers, 1210 to idenfify packet flows for mechanisms like Equal Cost Multipath 1211 Routing (see RFC 6438). 1212 TRUE: enabled 1213 FALSE: disabled 1214 Default: false 1215 1216anycast_src_echo_reply - BOOLEAN 1217 Controls the use of anycast addresses as source addresses for ICMPv6 1218 echo reply 1219 TRUE: enabled 1220 FALSE: disabled 1221 Default: FALSE 1222 1223idgen_delay - INTEGER 1224 Controls the delay in seconds after which time to retry 1225 privacy stable address generation if a DAD conflict is 1226 detected. 1227 Default: 1 (as specified in RFC7217) 1228 1229idgen_retries - INTEGER 1230 Controls the number of retries to generate a stable privacy 1231 address if a DAD conflict is detected. 1232 Default: 3 (as specified in RFC7217) 1233 1234mld_qrv - INTEGER 1235 Controls the MLD query robustness variable (see RFC3810 9.1). 1236 Default: 2 (as specified by RFC3810 9.1) 1237 Minimum: 1 (as specified by RFC6636 4.5) 1238 1239IPv6 Fragmentation: 1240 1241ip6frag_high_thresh - INTEGER 1242 Maximum memory used to reassemble IPv6 fragments. When 1243 ip6frag_high_thresh bytes of memory is allocated for this purpose, 1244 the fragment handler will toss packets until ip6frag_low_thresh 1245 is reached. 1246 1247ip6frag_low_thresh - INTEGER 1248 See ip6frag_high_thresh 1249 1250ip6frag_time - INTEGER 1251 Time in seconds to keep an IPv6 fragment in memory. 1252 1253conf/default/*: 1254 Change the interface-specific default settings. 1255 1256 1257conf/all/*: 1258 Change all the interface-specific settings. 1259 1260 [XXX: Other special features than forwarding?] 1261 1262conf/all/forwarding - BOOLEAN 1263 Enable global IPv6 forwarding between all interfaces. 1264 1265 IPv4 and IPv6 work differently here; e.g. netfilter must be used 1266 to control which interfaces may forward packets and which not. 1267 1268 This also sets all interfaces' Host/Router setting 1269 'forwarding' to the specified value. See below for details. 1270 1271 This referred to as global forwarding. 1272 1273proxy_ndp - BOOLEAN 1274 Do proxy ndp. 1275 1276fwmark_reflect - BOOLEAN 1277 Controls the fwmark of kernel-generated IPv6 reply packets that are not 1278 associated with a socket for example, TCP RSTs or ICMPv6 echo replies). 1279 If unset, these packets have a fwmark of zero. If set, they have the 1280 fwmark of the packet they are replying to. 1281 Default: 0 1282 1283conf/interface/*: 1284 Change special settings per interface. 1285 1286 The functional behaviour for certain settings is different 1287 depending on whether local forwarding is enabled or not. 1288 1289accept_ra - INTEGER 1290 Accept Router Advertisements; autoconfigure using them. 1291 1292 It also determines whether or not to transmit Router 1293 Solicitations. If and only if the functional setting is to 1294 accept Router Advertisements, Router Solicitations will be 1295 transmitted. 1296 1297 Possible values are: 1298 0 Do not accept Router Advertisements. 1299 1 Accept Router Advertisements if forwarding is disabled. 1300 2 Overrule forwarding behaviour. Accept Router Advertisements 1301 even if forwarding is enabled. 1302 1303 Functional default: enabled if local forwarding is disabled. 1304 disabled if local forwarding is enabled. 1305 1306accept_ra_defrtr - BOOLEAN 1307 Learn default router in Router Advertisement. 1308 1309 Functional default: enabled if accept_ra is enabled. 1310 disabled if accept_ra is disabled. 1311 1312accept_ra_from_local - BOOLEAN 1313 Accept RA with source-address that is found on local machine 1314 if the RA is otherwise proper and able to be accepted. 1315 Default is to NOT accept these as it may be an un-intended 1316 network loop. 1317 1318 Functional default: 1319 enabled if accept_ra_from_local is enabled 1320 on a specific interface. 1321 disabled if accept_ra_from_local is disabled 1322 on a specific interface. 1323 1324accept_ra_min_hop_limit - INTEGER 1325 Minimum hop limit Information in Router Advertisement. 1326 1327 Hop limit Information in Router Advertisement less than this 1328 variable shall be ignored. 1329 1330 Default: 1 1331 1332accept_ra_pinfo - BOOLEAN 1333 Learn Prefix Information in Router Advertisement. 1334 1335 Functional default: enabled if accept_ra is enabled. 1336 disabled if accept_ra is disabled. 1337 1338accept_ra_rt_info_max_plen - INTEGER 1339 Maximum prefix length of Route Information in RA. 1340 1341 Route Information w/ prefix larger than or equal to this 1342 variable shall be ignored. 1343 1344 Functional default: 0 if accept_ra_rtr_pref is enabled. 1345 -1 if accept_ra_rtr_pref is disabled. 1346 1347accept_ra_rtr_pref - BOOLEAN 1348 Accept Router Preference in RA. 1349 1350 Functional default: enabled if accept_ra is enabled. 1351 disabled if accept_ra is disabled. 1352 1353accept_ra_mtu - BOOLEAN 1354 Apply the MTU value specified in RA option 5 (RFC4861). If 1355 disabled, the MTU specified in the RA will be ignored. 1356 1357 Functional default: enabled if accept_ra is enabled. 1358 disabled if accept_ra is disabled. 1359 1360accept_redirects - BOOLEAN 1361 Accept Redirects. 1362 1363 Functional default: enabled if local forwarding is disabled. 1364 disabled if local forwarding is enabled. 1365 1366accept_source_route - INTEGER 1367 Accept source routing (routing extension header). 1368 1369 >= 0: Accept only routing header type 2. 1370 < 0: Do not accept routing header. 1371 1372 Default: 0 1373 1374autoconf - BOOLEAN 1375 Autoconfigure addresses using Prefix Information in Router 1376 Advertisements. 1377 1378 Functional default: enabled if accept_ra_pinfo is enabled. 1379 disabled if accept_ra_pinfo is disabled. 1380 1381dad_transmits - INTEGER 1382 The amount of Duplicate Address Detection probes to send. 1383 Default: 1 1384 1385forwarding - INTEGER 1386 Configure interface-specific Host/Router behaviour. 1387 1388 Note: It is recommended to have the same setting on all 1389 interfaces; mixed router/host scenarios are rather uncommon. 1390 1391 Possible values are: 1392 0 Forwarding disabled 1393 1 Forwarding enabled 1394 1395 FALSE (0): 1396 1397 By default, Host behaviour is assumed. This means: 1398 1399 1. IsRouter flag is not set in Neighbour Advertisements. 1400 2. If accept_ra is TRUE (default), transmit Router 1401 Solicitations. 1402 3. If accept_ra is TRUE (default), accept Router 1403 Advertisements (and do autoconfiguration). 1404 4. If accept_redirects is TRUE (default), accept Redirects. 1405 1406 TRUE (1): 1407 1408 If local forwarding is enabled, Router behaviour is assumed. 1409 This means exactly the reverse from the above: 1410 1411 1. IsRouter flag is set in Neighbour Advertisements. 1412 2. Router Solicitations are not sent unless accept_ra is 2. 1413 3. Router Advertisements are ignored unless accept_ra is 2. 1414 4. Redirects are ignored. 1415 1416 Default: 0 (disabled) if global forwarding is disabled (default), 1417 otherwise 1 (enabled). 1418 1419hop_limit - INTEGER 1420 Default Hop Limit to set. 1421 Default: 64 1422 1423mtu - INTEGER 1424 Default Maximum Transfer Unit 1425 Default: 1280 (IPv6 required minimum) 1426 1427router_probe_interval - INTEGER 1428 Minimum interval (in seconds) between Router Probing described 1429 in RFC4191. 1430 1431 Default: 60 1432 1433router_solicitation_delay - INTEGER 1434 Number of seconds to wait after interface is brought up 1435 before sending Router Solicitations. 1436 Default: 1 1437 1438router_solicitation_interval - INTEGER 1439 Number of seconds to wait between Router Solicitations. 1440 Default: 4 1441 1442router_solicitations - INTEGER 1443 Number of Router Solicitations to send until assuming no 1444 routers are present. 1445 Default: 3 1446 1447use_tempaddr - INTEGER 1448 Preference for Privacy Extensions (RFC3041). 1449 <= 0 : disable Privacy Extensions 1450 == 1 : enable Privacy Extensions, but prefer public 1451 addresses over temporary addresses. 1452 > 1 : enable Privacy Extensions and prefer temporary 1453 addresses over public addresses. 1454 Default: 0 (for most devices) 1455 -1 (for point-to-point devices and loopback devices) 1456 1457temp_valid_lft - INTEGER 1458 valid lifetime (in seconds) for temporary addresses. 1459 Default: 604800 (7 days) 1460 1461temp_prefered_lft - INTEGER 1462 Preferred lifetime (in seconds) for temporary addresses. 1463 Default: 86400 (1 day) 1464 1465max_desync_factor - INTEGER 1466 Maximum value for DESYNC_FACTOR, which is a random value 1467 that ensures that clients don't synchronize with each 1468 other and generate new addresses at exactly the same time. 1469 value is in seconds. 1470 Default: 600 1471 1472regen_max_retry - INTEGER 1473 Number of attempts before give up attempting to generate 1474 valid temporary addresses. 1475 Default: 5 1476 1477max_addresses - INTEGER 1478 Maximum number of autoconfigured addresses per interface. Setting 1479 to zero disables the limitation. It is not recommended to set this 1480 value too large (or to zero) because it would be an easy way to 1481 crash the kernel by allowing too many addresses to be created. 1482 Default: 16 1483 1484disable_ipv6 - BOOLEAN 1485 Disable IPv6 operation. If accept_dad is set to 2, this value 1486 will be dynamically set to TRUE if DAD fails for the link-local 1487 address. 1488 Default: FALSE (enable IPv6 operation) 1489 1490 When this value is changed from 1 to 0 (IPv6 is being enabled), 1491 it will dynamically create a link-local address on the given 1492 interface and start Duplicate Address Detection, if necessary. 1493 1494 When this value is changed from 0 to 1 (IPv6 is being disabled), 1495 it will dynamically delete all address on the given interface. 1496 1497accept_dad - INTEGER 1498 Whether to accept DAD (Duplicate Address Detection). 1499 0: Disable DAD 1500 1: Enable DAD (default) 1501 2: Enable DAD, and disable IPv6 operation if MAC-based duplicate 1502 link-local address has been found. 1503 1504force_tllao - BOOLEAN 1505 Enable sending the target link-layer address option even when 1506 responding to a unicast neighbor solicitation. 1507 Default: FALSE 1508 1509 Quoting from RFC 2461, section 4.4, Target link-layer address: 1510 1511 "The option MUST be included for multicast solicitations in order to 1512 avoid infinite Neighbor Solicitation "recursion" when the peer node 1513 does not have a cache entry to return a Neighbor Advertisements 1514 message. When responding to unicast solicitations, the option can be 1515 omitted since the sender of the solicitation has the correct link- 1516 layer address; otherwise it would not have be able to send the unicast 1517 solicitation in the first place. However, including the link-layer 1518 address in this case adds little overhead and eliminates a potential 1519 race condition where the sender deletes the cached link-layer address 1520 prior to receiving a response to a previous solicitation." 1521 1522ndisc_notify - BOOLEAN 1523 Define mode for notification of address and device changes. 1524 0 - (default): do nothing 1525 1 - Generate unsolicited neighbour advertisements when device is brought 1526 up or hardware address changes. 1527 1528mldv1_unsolicited_report_interval - INTEGER 1529 The interval in milliseconds in which the next unsolicited 1530 MLDv1 report retransmit will take place. 1531 Default: 10000 (10 seconds) 1532 1533mldv2_unsolicited_report_interval - INTEGER 1534 The interval in milliseconds in which the next unsolicited 1535 MLDv2 report retransmit will take place. 1536 Default: 1000 (1 second) 1537 1538force_mld_version - INTEGER 1539 0 - (default) No enforcement of a MLD version, MLDv1 fallback allowed 1540 1 - Enforce to use MLD version 1 1541 2 - Enforce to use MLD version 2 1542 1543suppress_frag_ndisc - INTEGER 1544 Control RFC 6980 (Security Implications of IPv6 Fragmentation 1545 with IPv6 Neighbor Discovery) behavior: 1546 1 - (default) discard fragmented neighbor discovery packets 1547 0 - allow fragmented neighbor discovery packets 1548 1549optimistic_dad - BOOLEAN 1550 Whether to perform Optimistic Duplicate Address Detection (RFC 4429). 1551 0: disabled (default) 1552 1: enabled 1553 1554use_optimistic - BOOLEAN 1555 If enabled, do not classify optimistic addresses as deprecated during 1556 source address selection. Preferred addresses will still be chosen 1557 before optimistic addresses, subject to other ranking in the source 1558 address selection algorithm. 1559 0: disabled (default) 1560 1: enabled 1561 1562stable_secret - IPv6 address 1563 This IPv6 address will be used as a secret to generate IPv6 1564 addresses for link-local addresses and autoconfigured 1565 ones. All addresses generated after setting this secret will 1566 be stable privacy ones by default. This can be changed via the 1567 addrgenmode ip-link. conf/default/stable_secret is used as the 1568 secret for the namespace, the interface specific ones can 1569 overwrite that. Writes to conf/all/stable_secret are refused. 1570 1571 It is recommended to generate this secret during installation 1572 of a system and keep it stable after that. 1573 1574 By default the stable secret is unset. 1575 1576icmp/*: 1577ratelimit - INTEGER 1578 Limit the maximal rates for sending ICMPv6 packets. 1579 0 to disable any limiting, 1580 otherwise the minimal space between responses in milliseconds. 1581 Default: 1000 1582 1583 1584IPv6 Update by: 1585Pekka Savola <pekkas@netcore.fi> 1586YOSHIFUJI Hideaki / USAGI Project <yoshfuji@linux-ipv6.org> 1587 1588 1589/proc/sys/net/bridge/* Variables: 1590 1591bridge-nf-call-arptables - BOOLEAN 1592 1 : pass bridged ARP traffic to arptables' FORWARD chain. 1593 0 : disable this. 1594 Default: 1 1595 1596bridge-nf-call-iptables - BOOLEAN 1597 1 : pass bridged IPv4 traffic to iptables' chains. 1598 0 : disable this. 1599 Default: 1 1600 1601bridge-nf-call-ip6tables - BOOLEAN 1602 1 : pass bridged IPv6 traffic to ip6tables' chains. 1603 0 : disable this. 1604 Default: 1 1605 1606bridge-nf-filter-vlan-tagged - BOOLEAN 1607 1 : pass bridged vlan-tagged ARP/IP/IPv6 traffic to {arp,ip,ip6}tables. 1608 0 : disable this. 1609 Default: 0 1610 1611bridge-nf-filter-pppoe-tagged - BOOLEAN 1612 1 : pass bridged pppoe-tagged IP/IPv6 traffic to {ip,ip6}tables. 1613 0 : disable this. 1614 Default: 0 1615 1616bridge-nf-pass-vlan-input-dev - BOOLEAN 1617 1: if bridge-nf-filter-vlan-tagged is enabled, try to find a vlan 1618 interface on the bridge and set the netfilter input device to the vlan. 1619 This allows use of e.g. "iptables -i br0.1" and makes the REDIRECT 1620 target work with vlan-on-top-of-bridge interfaces. When no matching 1621 vlan interface is found, or this switch is off, the input device is 1622 set to the bridge interface. 1623 0: disable bridge netfilter vlan interface lookup. 1624 Default: 0 1625 1626proc/sys/net/sctp/* Variables: 1627 1628addip_enable - BOOLEAN 1629 Enable or disable extension of Dynamic Address Reconfiguration 1630 (ADD-IP) functionality specified in RFC5061. This extension provides 1631 the ability to dynamically add and remove new addresses for the SCTP 1632 associations. 1633 1634 1: Enable extension. 1635 1636 0: Disable extension. 1637 1638 Default: 0 1639 1640addip_noauth_enable - BOOLEAN 1641 Dynamic Address Reconfiguration (ADD-IP) requires the use of 1642 authentication to protect the operations of adding or removing new 1643 addresses. This requirement is mandated so that unauthorized hosts 1644 would not be able to hijack associations. However, older 1645 implementations may not have implemented this requirement while 1646 allowing the ADD-IP extension. For reasons of interoperability, 1647 we provide this variable to control the enforcement of the 1648 authentication requirement. 1649 1650 1: Allow ADD-IP extension to be used without authentication. This 1651 should only be set in a closed environment for interoperability 1652 with older implementations. 1653 1654 0: Enforce the authentication requirement 1655 1656 Default: 0 1657 1658auth_enable - BOOLEAN 1659 Enable or disable Authenticated Chunks extension. This extension 1660 provides the ability to send and receive authenticated chunks and is 1661 required for secure operation of Dynamic Address Reconfiguration 1662 (ADD-IP) extension. 1663 1664 1: Enable this extension. 1665 0: Disable this extension. 1666 1667 Default: 0 1668 1669prsctp_enable - BOOLEAN 1670 Enable or disable the Partial Reliability extension (RFC3758) which 1671 is used to notify peers that a given DATA should no longer be expected. 1672 1673 1: Enable extension 1674 0: Disable 1675 1676 Default: 1 1677 1678max_burst - INTEGER 1679 The limit of the number of new packets that can be initially sent. It 1680 controls how bursty the generated traffic can be. 1681 1682 Default: 4 1683 1684association_max_retrans - INTEGER 1685 Set the maximum number for retransmissions that an association can 1686 attempt deciding that the remote end is unreachable. If this value 1687 is exceeded, the association is terminated. 1688 1689 Default: 10 1690 1691max_init_retransmits - INTEGER 1692 The maximum number of retransmissions of INIT and COOKIE-ECHO chunks 1693 that an association will attempt before declaring the destination 1694 unreachable and terminating. 1695 1696 Default: 8 1697 1698path_max_retrans - INTEGER 1699 The maximum number of retransmissions that will be attempted on a given 1700 path. Once this threshold is exceeded, the path is considered 1701 unreachable, and new traffic will use a different path when the 1702 association is multihomed. 1703 1704 Default: 5 1705 1706pf_retrans - INTEGER 1707 The number of retransmissions that will be attempted on a given path 1708 before traffic is redirected to an alternate transport (should one 1709 exist). Note this is distinct from path_max_retrans, as a path that 1710 passes the pf_retrans threshold can still be used. Its only 1711 deprioritized when a transmission path is selected by the stack. This 1712 setting is primarily used to enable fast failover mechanisms without 1713 having to reduce path_max_retrans to a very low value. See: 1714 http://www.ietf.org/id/draft-nishida-tsvwg-sctp-failover-05.txt 1715 for details. Note also that a value of pf_retrans > path_max_retrans 1716 disables this feature 1717 1718 Default: 0 1719 1720rto_initial - INTEGER 1721 The initial round trip timeout value in milliseconds that will be used 1722 in calculating round trip times. This is the initial time interval 1723 for retransmissions. 1724 1725 Default: 3000 1726 1727rto_max - INTEGER 1728 The maximum value (in milliseconds) of the round trip timeout. This 1729 is the largest time interval that can elapse between retransmissions. 1730 1731 Default: 60000 1732 1733rto_min - INTEGER 1734 The minimum value (in milliseconds) of the round trip timeout. This 1735 is the smallest time interval the can elapse between retransmissions. 1736 1737 Default: 1000 1738 1739hb_interval - INTEGER 1740 The interval (in milliseconds) between HEARTBEAT chunks. These chunks 1741 are sent at the specified interval on idle paths to probe the state of 1742 a given path between 2 associations. 1743 1744 Default: 30000 1745 1746sack_timeout - INTEGER 1747 The amount of time (in milliseconds) that the implementation will wait 1748 to send a SACK. 1749 1750 Default: 200 1751 1752valid_cookie_life - INTEGER 1753 The default lifetime of the SCTP cookie (in milliseconds). The cookie 1754 is used during association establishment. 1755 1756 Default: 60000 1757 1758cookie_preserve_enable - BOOLEAN 1759 Enable or disable the ability to extend the lifetime of the SCTP cookie 1760 that is used during the establishment phase of SCTP association 1761 1762 1: Enable cookie lifetime extension. 1763 0: Disable 1764 1765 Default: 1 1766 1767cookie_hmac_alg - STRING 1768 Select the hmac algorithm used when generating the cookie value sent by 1769 a listening sctp socket to a connecting client in the INIT-ACK chunk. 1770 Valid values are: 1771 * md5 1772 * sha1 1773 * none 1774 Ability to assign md5 or sha1 as the selected alg is predicated on the 1775 configuration of those algorithms at build time (CONFIG_CRYPTO_MD5 and 1776 CONFIG_CRYPTO_SHA1). 1777 1778 Default: Dependent on configuration. MD5 if available, else SHA1 if 1779 available, else none. 1780 1781rcvbuf_policy - INTEGER 1782 Determines if the receive buffer is attributed to the socket or to 1783 association. SCTP supports the capability to create multiple 1784 associations on a single socket. When using this capability, it is 1785 possible that a single stalled association that's buffering a lot 1786 of data may block other associations from delivering their data by 1787 consuming all of the receive buffer space. To work around this, 1788 the rcvbuf_policy could be set to attribute the receiver buffer space 1789 to each association instead of the socket. This prevents the described 1790 blocking. 1791 1792 1: rcvbuf space is per association 1793 0: rcvbuf space is per socket 1794 1795 Default: 0 1796 1797sndbuf_policy - INTEGER 1798 Similar to rcvbuf_policy above, this applies to send buffer space. 1799 1800 1: Send buffer is tracked per association 1801 0: Send buffer is tracked per socket. 1802 1803 Default: 0 1804 1805sctp_mem - vector of 3 INTEGERs: min, pressure, max 1806 Number of pages allowed for queueing by all SCTP sockets. 1807 1808 min: Below this number of pages SCTP is not bothered about its 1809 memory appetite. When amount of memory allocated by SCTP exceeds 1810 this number, SCTP starts to moderate memory usage. 1811 1812 pressure: This value was introduced to follow format of tcp_mem. 1813 1814 max: Number of pages allowed for queueing by all SCTP sockets. 1815 1816 Default is calculated at boot time from amount of available memory. 1817 1818sctp_rmem - vector of 3 INTEGERs: min, default, max 1819 Only the first value ("min") is used, "default" and "max" are 1820 ignored. 1821 1822 min: Minimal size of receive buffer used by SCTP socket. 1823 It is guaranteed to each SCTP socket (but not association) even 1824 under moderate memory pressure. 1825 1826 Default: 1 page 1827 1828sctp_wmem - vector of 3 INTEGERs: min, default, max 1829 Currently this tunable has no effect. 1830 1831addr_scope_policy - INTEGER 1832 Control IPv4 address scoping - draft-stewart-tsvwg-sctp-ipv4-00 1833 1834 0 - Disable IPv4 address scoping 1835 1 - Enable IPv4 address scoping 1836 2 - Follow draft but allow IPv4 private addresses 1837 3 - Follow draft but allow IPv4 link local addresses 1838 1839 Default: 1 1840 1841 1842/proc/sys/net/core/* 1843 Please see: Documentation/sysctl/net.txt for descriptions of these entries. 1844 1845 1846/proc/sys/net/unix/* 1847max_dgram_qlen - INTEGER 1848 The maximum length of dgram socket receive queue 1849 1850 Default: 10 1851 1852 1853UNDOCUMENTED: 1854 1855/proc/sys/net/irda/* 1856 fast_poll_increase FIXME 1857 warn_noreply_time FIXME 1858 discovery_slots FIXME 1859 slot_timeout FIXME 1860 max_baud_rate FIXME 1861 discovery_timeout FIXME 1862 lap_keepalive_time FIXME 1863 max_noreply_time FIXME 1864 max_tx_data_size FIXME 1865 max_tx_window FIXME 1866 min_tx_turn_time FIXME 1867