UPSTREAM: usb: dwc3: ep0: fix setup_packet_pending initialization
[firefly-linux-kernel-4.4.55.git] / Documentation / networking / ip-sysctl.txt
index 3458d6343e01de0e66f0d3f2e09efc61bab3b886..2042261408b9616712b56e0ed3db642b8221975f 100644 (file)
@@ -15,22 +15,71 @@ ip_default_ttl - INTEGER
        forwarded) IP packets. Should be between 1 and 255 inclusive.
        Default: 64 (as recommended by RFC1700)
 
-ip_no_pmtu_disc - BOOLEAN
-       Disable Path MTU Discovery.
-       default FALSE
+ip_no_pmtu_disc - INTEGER
+       Disable Path MTU Discovery. If enabled in mode 1 and a
+       fragmentation-required ICMP is received, the PMTU to this
+       destination will be set to min_pmtu (see below). You will need
+       to raise min_pmtu to the smallest interface MTU on your system
+       manually if you want to avoid locally generated fragments.
+
+       In mode 2 incoming Path MTU Discovery messages will be
+       discarded. Outgoing frames are handled the same as in mode 1,
+       implicitly setting IP_PMTUDISC_DONT on every created socket.
+
+       Mode 3 is a hardend pmtu discover mode. The kernel will only
+       accept fragmentation-needed errors if the underlying protocol
+       can verify them besides a plain socket lookup. Current
+       protocols for which pmtu events will be honored are TCP, SCTP
+       and DCCP as they verify e.g. the sequence number or the
+       association. This mode should not be enabled globally but is
+       only intended to secure e.g. name servers in namespaces where
+       TCP path mtu must still work but path MTU information of other
+       protocols should be discarded. If enabled globally this mode
+       could break other protocols.
+
+       Possible values: 0-3
+       Default: FALSE
 
 min_pmtu - INTEGER
        default 552 - minimum discovered Path MTU
 
+ip_forward_use_pmtu - BOOLEAN
+       By default we don't trust protocol path MTUs while forwarding
+       because they could be easily forged and can lead to unwanted
+       fragmentation by the router.
+       You only need to enable this if you have user-space software
+       which tries to discover path mtus by itself and depends on the
+       kernel honoring this information. This is normally not the
+       case.
+       Default: 0 (disabled)
+       Possible values:
+       0 - disabled
+       1 - enabled
+
+fwmark_reflect - BOOLEAN
+       Controls the fwmark of kernel-generated IPv4 reply packets that are not
+       associated with a socket for example, TCP RSTs or ICMP echo replies).
+       If unset, these packets have a fwmark of zero. If set, they have the
+       fwmark of the packet they are replying to.
+       Default: 0
+
 route/max_size - INTEGER
        Maximum number of routes allowed in the kernel.  Increase
        this when using large numbers of interfaces and/or routes.
+       From linux kernel 3.6 onwards, this is deprecated for ipv4
+       as route cache is no longer used.
 
 neigh/default/gc_thresh1 - INTEGER
        Minimum number of entries to keep.  Garbage collector will not
        purge entries if there are fewer than this number.
        Default: 128
 
+neigh/default/gc_thresh2 - INTEGER
+       Threshold when garbage collector becomes more aggressive about
+       purging entries. Entries older than 5 seconds will be cleared
+       when over this number.
+       Default: 512
+
 neigh/default/gc_thresh3 - INTEGER
        Maximum number of neighbor entries allowed.  Increase this
        when using large numbers of interfaces and when communicating
@@ -67,19 +116,17 @@ ipfrag_high_thresh - INTEGER
        Maximum memory used to reassemble IP fragments. When
        ipfrag_high_thresh bytes of memory is allocated for this purpose,
        the fragment handler will toss packets until ipfrag_low_thresh
-       is reached.
+       is reached. This also serves as a maximum limit to namespaces
+       different from the initial one.
 
 ipfrag_low_thresh - INTEGER
-       See ipfrag_high_thresh
+       Maximum memory used to reassemble IP fragments before the kernel
+       begins to remove incomplete fragment queues to free up resources.
+       The kernel still accepts new fragments for defragmentation.
 
 ipfrag_time - INTEGER
        Time in seconds to keep an IP fragment in memory.
 
-ipfrag_secret_interval - INTEGER
-       Regeneration interval (in seconds) of the hash secret (or lifetime
-       for the hash secret) for IP fragments.
-       Default: 600
-
 ipfrag_max_dist - INTEGER
        ipfrag_max_dist is a non-negative integer value which defines the
        maximum "disorder" which is allowed among fragments which share a
@@ -156,6 +203,16 @@ tcp_app_win - INTEGER
        buffer. Value 0 is special, it means that nothing is reserved.
        Default: 31
 
+tcp_autocorking - BOOLEAN
+       Enable TCP auto corking :
+       When applications do consecutive small write()/sendmsg() system calls,
+       we try to coalesce these small writes as much as possible, to lower
+       total amount of sent packets. This is done if at least one prior
+       packet for the flow is waiting in Qdisc queues or device transmit
+       queue. Applications can still use TCP_CORK for optimal behavior
+       when they know how/when to uncork their sockets.
+       Default : 1
+
 tcp_available_congestion_control - STRING
        Shows the available congestion control choices that are registered.
        More congestion control algorithms may be available as modules,
@@ -183,7 +240,7 @@ tcp_early_retrans - INTEGER
        for triggering fast retransmit when the amount of outstanding data is
        small and when no previously unsent data can be transmitted (such
        that limited transmit could be used). Also controls the use of
-       Tail loss probe (TLP) that converts RTOs occuring due to tail
+       Tail loss probe (TLP) that converts RTOs occurring due to tail
        losses into fast recovery (draft-dukkipati-tcpm-tcp-loss-probe-01).
        Possible values:
                0 disables ER
@@ -210,6 +267,15 @@ tcp_ecn - INTEGER
                  but do not request ECN on outgoing connections.
        Default: 2
 
+tcp_ecn_fallback - BOOLEAN
+       If the kernel detects that ECN connection misbehaves, enable fall
+       back to non-ECN. Currently, this knob implements the fallback
+       from RFC3168, section 6.1.1.1., but we reserve that in future,
+       additional detection mechanisms could be implemented under this
+       knob. The value is not used, if tcp_ecn or per route (or congestion
+       control) ECN settings are disabled.
+       Default: 1 (fallback enabled)
+
 tcp_fack - BOOLEAN
        Enable FACK congestion avoidance and fast retransmission.
        The value is not used, if tcp_sack is not enabled.
@@ -233,6 +299,28 @@ tcp_frto - INTEGER
 
        By default it's enabled with a non-zero value. 0 disables F-RTO.
 
+tcp_invalid_ratelimit - INTEGER
+       Limit the maximal rate for sending duplicate acknowledgments
+       in response to incoming TCP packets that are for an existing
+       connection but that are invalid due to any of these reasons:
+
+         (a) out-of-window sequence number,
+         (b) out-of-window acknowledgment number, or
+         (c) PAWS (Protection Against Wrapped Sequence numbers) check failure
+
+       This can help mitigate simple "ack loop" DoS attacks, wherein
+       a buggy or malicious middlebox or man-in-the-middle can
+       rewrite TCP header fields in manner that causes each endpoint
+       to think that the other is sending invalid TCP segments, thus
+       causing each side to send an unterminating stream of duplicate
+       acknowledgments for invalid segments.
+
+       Using 0 disables rate-limiting of dupacks in response to
+       invalid segments; otherwise this value specifies the minimal
+       space between sending such dupacks, in milliseconds.
+
+       Default: 500 (milliseconds).
+
 tcp_keepalive_time - INTEGER
        How often TCP sends out keepalive messages when keepalive is enabled.
        Default: 2hours.
@@ -267,17 +355,6 @@ tcp_max_orphans - INTEGER
        more aggressively. Let me to remind again: each orphan eats
        up to ~64K of unswappable memory.
 
-tcp_max_ssthresh - INTEGER
-       Limited Slow-Start for TCP with large congestion windows (cwnd) defined in
-       RFC3742. Limited slow-start is a mechanism to limit growth of the cwnd
-       on the region where cwnd is larger than tcp_max_ssthresh. TCP increases cwnd
-       by at most tcp_max_ssthresh segments, and by at least tcp_max_ssthresh/2
-       segments per RTT when the cwnd is above tcp_max_ssthresh.
-       If TCP connection increased cwnd to thousands (or tens of thousands) segments,
-       and thousands of packets were being dropped during slow-start, you can set
-       tcp_max_ssthresh to improve performance for new TCP connection.
-       Default: 0 (off)
-
 tcp_max_syn_backlog - INTEGER
        Maximal number of remembered connection requests, which have not
        received an acknowledgment from connecting client.
@@ -307,6 +384,14 @@ tcp_mem - vector of 3 INTEGERs: min, pressure, max
        Defaults are calculated at boot time from amount of available
        memory.
 
+tcp_min_rtt_wlen - INTEGER
+       The window length of the windowed min filter to track the minimum RTT.
+       A shorter window lets a flow more quickly pick up new (higher)
+       minimum RTT when it is moved to a longer path (e.g., due to traffic
+       engineering). A longer window makes the filter more resistant to RTT
+       inflations such as transient congestion. The unit is seconds.
+       Default: 300
+
 tcp_moderate_rcvbuf - BOOLEAN
        If set, TCP performs receive buffer auto-tuning, attempting to
        automatically size the buffer (no greater than tcp_rmem[2]) to
@@ -320,6 +405,16 @@ tcp_mtu_probing - INTEGER
          1 - Disabled by default, enabled when an ICMP black hole detected
          2 - Always enabled, use initial MSS of tcp_base_mss.
 
+tcp_probe_interval - INTEGER
+       Controls how often to start TCP Packetization-Layer Path MTU
+       Discovery reprobe. The default is reprobing every 10 minutes as
+       per RFC4821.
+
+tcp_probe_threshold - INTEGER
+       Controls when TCP Packetization-Layer Path MTU Discovery probing
+       will stop in respect to the width of search range in bytes. Default
+       is 8 bytes.
+
 tcp_no_metrics_save - BOOLEAN
        By default, TCP saves various connection metrics in the route cache
        when the connection closes, so that connections established in the
@@ -338,10 +433,27 @@ tcp_orphan_retries - INTEGER
        you should think about lowering this value, such sockets
        may consume significant resources. Cf. tcp_max_orphans.
 
+tcp_recovery - INTEGER
+       This value is a bitmap to enable various experimental loss recovery
+       features.
+
+       RACK: 0x1 enables the RACK loss detection for fast detection of lost
+             retransmissions and tail drops.
+
+       Default: 0x1
+
 tcp_reordering - INTEGER
-       Maximal reordering of packets in a TCP stream.
+       Initial reordering level of packets in a TCP stream.
+       TCP stack can then dynamically adjust flow reordering level
+       between this initial value and tcp_max_reordering
        Default: 3
 
+tcp_max_reordering - INTEGER
+       Maximal reordering level of packets in a TCP stream.
+       300 is a fairly conservative value, but you might increase it
+       if paths are using per packet load balancing (like bonding rr mode)
+       Default: 300
+
 tcp_retrans_collapse - BOOLEAN
        Bug-to-bug compatibility with some broken printers.
        On retransmit try to send bigger packets to work around bugs in
@@ -440,6 +552,10 @@ tcp_syncookies - BOOLEAN
        SYN flood warnings in logs not being really flooded, your server
        is seriously misconfigured.
 
+       If you want to test which effects syncookies have to your
+       network connections you can set this knob to 2 to enable
+       unconditionally generation of syncookies.
+
 tcp_fastopen - INTEGER
        Enable TCP Fast Open feature (draft-ietf-tcpm-fastopen) to send data
        in the opening SYN packet. To use this feature, the client application
@@ -447,7 +563,7 @@ tcp_fastopen - INTEGER
        connect() to perform a TCP handshake automatically.
 
        The values (bitmap) are
-       1: Enables sending data in the opening SYN on the client.
+       1: Enables sending data in the opening SYN on the client w/ MSG_FASTOPEN.
        2: Enables TCP Fast Open on the server side, i.e., allowing data in
           a SYN packet to be accepted and passed to the application before
           3-way hand shake finishes.
@@ -460,7 +576,7 @@ tcp_fastopen - INTEGER
           different ways of setting max_qlen without the TCP_FASTOPEN socket
           option.
 
-       Default: 0
+       Default: 1
 
        Note that the client & server side Fast Open flags (1 and 2
        respectively) must be also enabled before the rest of flags can take
@@ -468,6 +584,16 @@ tcp_fastopen - INTEGER
 
        See include/net/tcp.h and the code for more details.
 
+tcp_fwmark_accept - BOOLEAN
+       If set, incoming connections to listening sockets that do not have a
+       socket mark will set the mark of the accepting socket to the fwmark of
+       the incoming SYN packet. This will cause all packets on that connection
+       (starting from the first SYNACK) to be sent with that fwmark. The
+       listening socket's mark is unchanged. Listening sockets that already
+       have a fwmark set via setsockopt(SOL_SOCKET, SO_MARK, ...) are
+       unaffected.
+       Default: 0
+
 tcp_syn_retries - INTEGER
        Number of times initial SYNs for an active TCP connection attempt
        will be retransmitted. Should not be higher than 255. Default value
@@ -478,6 +604,30 @@ tcp_syn_retries - INTEGER
 tcp_timestamps - BOOLEAN
        Enable timestamps as defined in RFC1323.
 
+tcp_min_tso_segs - INTEGER
+       Minimal number of segments per TSO frame.
+       Since linux-3.12, TCP does an automatic sizing of TSO frames,
+       depending on flow rate, instead of filling 64Kbytes packets.
+       For specific usages, it's possible to force TCP to build big
+       TSO frames. Note that TCP stack might split too big TSO packets
+       if available window is too small.
+       Default: 2
+
+tcp_pacing_ss_ratio - INTEGER
+       sk->sk_pacing_rate is set by TCP stack using a ratio applied
+       to current rate. (current_rate = cwnd * mss / srtt)
+       If TCP is in slow start, tcp_pacing_ss_ratio is applied
+       to let TCP probe for bigger speeds, assuming cwnd can be
+       doubled every other RTT.
+       Default: 200
+
+tcp_pacing_ca_ratio - INTEGER
+       sk->sk_pacing_rate is set by TCP stack using a ratio applied
+       to current rate. (current_rate = cwnd * mss / srtt)
+       If TCP is in congestion avoidance phase, tcp_pacing_ca_ratio
+       is applied to conservatively probe for bigger throughput.
+       Default: 120
+
 tcp_tso_win_divisor - INTEGER
        This allows control over what percentage of the congestion window
        can be consumed by a single TSO frame.
@@ -516,6 +666,19 @@ tcp_wmem - vector of 3 INTEGERs: min, default, max
        this value is ignored.
        Default: between 64K and 4MB, depending on RAM size.
 
+tcp_notsent_lowat - UNSIGNED INTEGER
+       A TCP socket can control the amount of unsent bytes in its write queue,
+       thanks to TCP_NOTSENT_LOWAT socket option. poll()/select()/epoll()
+       reports POLLOUT events if the amount of unsent bytes is below a per
+       socket value, and if the write queue is not full. sendmsg() will
+       also not add new buffers if the limit is hit.
+
+       This global variable controls the amount of unsent data for
+       sockets not using TCP_NOTSENT_LOWAT. For these sockets, a change
+       to the global variable has immediate effect.
+
+       Default: UINT_MAX (0xFFFFFFFF)
+
 tcp_workaround_signed_windows - BOOLEAN
        If set, assume no receipt of a window scaling option means the
        remote TCP is broken and treats the window as a signed quantity.
@@ -523,12 +686,6 @@ tcp_workaround_signed_windows - BOOLEAN
        not receive a window scaling option from them.
        Default: 0
 
-tcp_dma_copybreak - INTEGER
-       Lower limit, in bytes, of the size of socket reads that will be
-       offloaded to a DMA copy engine, if one is present in the system
-       and CONFIG_NET_DMA is enabled.
-       Default: 4096
-
 tcp_thin_linear_timeouts - BOOLEAN
        Enable dynamic triggering of linear timeouts for thin streams.
        If set, a check is performed upon retransmission by timeout to
@@ -562,10 +719,7 @@ tcp_limit_output_bytes - INTEGER
        typical pfifo_fast qdiscs.
        tcp_limit_output_bytes limits the number of bytes on qdisc
        or device to reduce artificial RTT/cwnd and reduce bufferbloat.
-       Note: For GSO/TSO enabled flows, we try to have at least two
-       packets in flight. Reducing tcp_limit_output_bytes might also
-       reduce the size of individual GSO packet (64KB being the max)
-       Default: 131072
+       Default: 262144
 
 tcp_challenge_ack_limit - INTEGER
        Limits number of Challenge ACK sent per second, as recommended
@@ -639,8 +793,10 @@ IP Variables:
 ip_local_port_range - 2 INTEGERS
        Defines the local port range that is used by TCP and UDP to
        choose the local port. The first number is the first, the
-       second the last local port number. The default values are
-       32768 and 61000 respectively.
+       second the last local port number.
+       If possible, it is better these numbers have different parity.
+       (one even and one odd values)
+       The default values are 32768 and 60999 respectively.
 
 ip_local_reserved_ports - list of comma separated ranges
        Specify the ports which are reserved for known third-party
@@ -663,7 +819,7 @@ ip_local_reserved_ports - list of comma separated ranges
        ip_local_port_range, e.g.:
 
        $ cat /proc/sys/net/ipv4/ip_local_port_range
-       32000   61000
+       32000   60999
        $ cat /proc/sys/net/ipv4/ip_local_reserved_ports
        8080,9148
 
@@ -685,6 +841,15 @@ ip_dynaddr - BOOLEAN
        occurs.
        Default: 0
 
+ip_early_demux - BOOLEAN
+       Optimize input packet processing down to one demux for
+       certain kinds of local sockets.  Currently we only do this
+       for established TCP sockets.
+
+       It may add an additional cost for pure routing workloads that
+       reduces overall throughput, in such case you should disable it.
+       Default: 1
+
 icmp_echo_ignore_all - BOOLEAN
        If set non-zero, then the kernel will ignore all ICMP ECHO
        requests sent to it.
@@ -700,8 +865,21 @@ icmp_ratelimit - INTEGER
        icmp_ratemask (see below) to specific targets.
        0 to disable any limiting,
        otherwise the minimal space between responses in milliseconds.
+       Note that another sysctl, icmp_msgs_per_sec limits the number
+       of ICMP packets sent on all targets.
        Default: 1000
 
+icmp_msgs_per_sec - INTEGER
+       Limit maximal number of ICMP packets sent per second from this host.
+       Only messages whose type matches icmp_ratemask (see below) are
+       controlled by this limit.
+       Default: 1000
+
+icmp_msgs_burst - INTEGER
+       icmp_msgs_per_sec controls number of ICMP packets sent per second,
+       while icmp_msgs_burst controls the burst size of these packets.
+       Default: 50
+
 icmp_ratemask - INTEGER
        Mask made of ICMP types for which rates are being limited.
        Significant bits: IHGFEDCBA9876543210
@@ -729,7 +907,7 @@ icmp_ignore_bogus_error_responses - BOOLEAN
        frames.  Such violations are normally logged via a kernel warning.
        If this is set to TRUE, the kernel will not give such warnings, which
        will avoid log file clutter.
-       Default: FALSE
+       Default: 1
 
 icmp_errors_use_inbound_ifaddr - BOOLEAN
 
@@ -775,6 +953,11 @@ igmp_max_memberships - INTEGER
 
        conf/all/*        is special, changes the settings for all interfaces
 
+igmp_qrv - INTEGER
+        Controls the IGMP query robustness variable (see RFC2236 8.1).
+        Default: 2 (as specified by RFC2236 8.1)
+        Minimum: 1 (as specified by RFC6636 4.5)
+
 log_martians - BOOLEAN
        Log packets with impossible addresses to kernel log.
        log_martians for the interface will be enabled if at least one of
@@ -878,14 +1061,9 @@ accept_source_route - BOOLEAN
                FALSE (host)
 
 accept_local - BOOLEAN
-       Accept packets with local source addresses. In combination
-       with suitable routing, this can be used to direct packets
-       between two local interfaces over the wire and have them
-       accepted properly.
-
-       rp_filter must be set to a non-zero value in order for
-       accept_local to have an effect.
-
+       Accept packets with local source addresses. In combination with
+       suitable routing, this can be used to direct packets between two
+       local interfaces over the wire and have them accepted properly.
        default FALSE
 
 route_localnet - BOOLEAN
@@ -1001,11 +1179,23 @@ arp_accept - BOOLEAN
        gratuitous arp frame, the arp table will be updated regardless
        if this setting is on or off.
 
+mcast_solicit - INTEGER
+       The maximum number of multicast probes in INCOMPLETE state,
+       when the associated hardware address is unknown.  Defaults
+       to 3.
+
+ucast_solicit - INTEGER
+       The maximum number of unicast probes in PROBE state, when
+       the hardware address is being reconfirmed.  Defaults to 3.
 
 app_solicit - INTEGER
        The maximum number of probes to send to the user space ARP daemon
        via netlink before dropping back to multicast probes (see
-       mcast_solicit).  Defaults to 0.
+       mcast_resolicit).  Defaults to 0.
+
+mcast_resolicit - INTEGER
+       The maximum number of multicast probes after unicast and
+       app probes in PROBE state.  Defaults to 0.
 
 disable_policy - BOOLEAN
        Disable IPSEC policy (SPD) for this interface
@@ -1013,12 +1203,37 @@ disable_policy - BOOLEAN
 disable_xfrm - BOOLEAN
        Disable IPSEC encryption on this interface, whatever the policy
 
+igmpv2_unsolicited_report_interval - INTEGER
+       The interval in milliseconds in which the next unsolicited
+       IGMPv1 or IGMPv2 report retransmit will take place.
+       Default: 10000 (10 seconds)
+
+igmpv3_unsolicited_report_interval - INTEGER
+       The interval in milliseconds in which the next unsolicited
+       IGMPv3 report retransmit will take place.
+       Default: 1000 (1 seconds)
+
+promote_secondaries - BOOLEAN
+       When a primary IP address is removed from this interface
+       promote a corresponding secondary IP address instead of
+       removing all the corresponding secondary IP addresses.
 
 
 tag - INTEGER
        Allows you to write a number, which can be used as required.
        Default value is 0.
 
+xfrm4_gc_thresh - INTEGER
+       The threshold at which we will start garbage collecting for IPv4
+       destination cache entries.  At twice this value the system will
+       refuse new allocations. The value must be set below the flowcache
+       limit (4096 * number of online cpus) to take effect.
+
+igmp_link_local_mcast_reports - BOOLEAN
+       Enable IGMP reports for link local multicast groups in the
+       224.0.0.X range.
+       Default TRUE
+
 Alexey Kuznetsov.
 kuznet@ms2.inr.ac.ru
 
@@ -1045,6 +1260,60 @@ bindv6only - BOOLEAN
 
        Default: FALSE (as specified in RFC3493)
 
+flowlabel_consistency - BOOLEAN
+       Protect the consistency (and unicity) of flow label.
+       You have to disable it to use IPV6_FL_F_REFLECT flag on the
+       flow label manager.
+       TRUE: enabled
+       FALSE: disabled
+       Default: TRUE
+
+auto_flowlabels - INTEGER
+       Automatically generate flow labels based on a flow hash of the
+       packet. This allows intermediate devices, such as routers, to
+       identify packet flows for mechanisms like Equal Cost Multipath
+       Routing (see RFC 6438).
+       0: automatic flow labels are completely disabled
+       1: automatic flow labels are enabled by default, they can be
+          disabled on a per socket basis using the IPV6_AUTOFLOWLABEL
+          socket option
+       2: automatic flow labels are allowed, they may be enabled on a
+          per socket basis using the IPV6_AUTOFLOWLABEL socket option
+       3: automatic flow labels are enabled and enforced, they cannot
+          be disabled by the socket option
+       Default: 1
+
+flowlabel_state_ranges - BOOLEAN
+       Split the flow label number space into two ranges. 0-0x7FFFF is
+       reserved for the IPv6 flow manager facility, 0x80000-0xFFFFF
+       is reserved for stateless flow labels as described in RFC6437.
+       TRUE: enabled
+       FALSE: disabled
+       Default: true
+
+anycast_src_echo_reply - BOOLEAN
+       Controls the use of anycast addresses as source addresses for ICMPv6
+       echo reply
+       TRUE:  enabled
+       FALSE: disabled
+       Default: FALSE
+
+idgen_delay - INTEGER
+       Controls the delay in seconds after which time to retry
+       privacy stable address generation if a DAD conflict is
+       detected.
+       Default: 1 (as specified in RFC7217)
+
+idgen_retries - INTEGER
+       Controls the number of retries to generate a stable privacy
+       address if a DAD conflict is detected.
+       Default: 3 (as specified in RFC7217)
+
+mld_qrv - INTEGER
+       Controls the MLD query robustness variable (see RFC3810 9.1).
+       Default: 2 (as specified by RFC3810 9.1)
+       Minimum: 1 (as specified by RFC6636 4.5)
+
 IPv6 Fragmentation:
 
 ip6frag_high_thresh - INTEGER
@@ -1059,11 +1328,6 @@ ip6frag_low_thresh - INTEGER
 ip6frag_time - INTEGER
        Time in seconds to keep an IPv6 fragment in memory.
 
-ip6frag_secret_interval - INTEGER
-       Regeneration interval (in seconds) of the hash secret (or lifetime
-       for the hash secret) for IPv6 fragments.
-       Default: 600
-
 conf/default/*:
        Change the interface-specific default settings.
 
@@ -1087,6 +1351,13 @@ conf/all/forwarding - BOOLEAN
 proxy_ndp - BOOLEAN
        Do proxy ndp.
 
+fwmark_reflect - BOOLEAN
+       Controls the fwmark of kernel-generated IPv6 reply packets that are not
+       associated with a socket for example, TCP RSTs or ICMPv6 echo replies).
+       If unset, these packets have a fwmark of zero. If set, they have the
+       fwmark of the packet they are replying to.
+       Default: 0
+
 conf/interface/*:
        Change special settings per interface.
 
@@ -1116,6 +1387,26 @@ accept_ra_defrtr - BOOLEAN
        Functional default: enabled if accept_ra is enabled.
                            disabled if accept_ra is disabled.
 
+accept_ra_from_local - BOOLEAN
+       Accept RA with source-address that is found on local machine
+        if the RA is otherwise proper and able to be accepted.
+        Default is to NOT accept these as it may be an un-intended
+        network loop.
+
+       Functional default:
+           enabled if accept_ra_from_local is enabled
+               on a specific interface.
+          disabled if accept_ra_from_local is disabled
+               on a specific interface.
+
+accept_ra_min_hop_limit - INTEGER
+       Minimum hop limit Information in Router Advertisement.
+
+       Hop limit Information in Router Advertisement less than this
+       variable shall be ignored.
+
+       Default: 1
+
 accept_ra_pinfo - BOOLEAN
        Learn Prefix Information in Router Advertisement.
 
@@ -1137,6 +1428,13 @@ accept_ra_rtr_pref - BOOLEAN
        Functional default: enabled if accept_ra is enabled.
                            disabled if accept_ra is disabled.
 
+accept_ra_mtu - BOOLEAN
+       Apply the MTU value specified in RA option 5 (RFC4861). If
+       disabled, the MTU specified in the RA will be ignored.
+
+       Functional default: enabled if accept_ra is enabled.
+                           disabled if accept_ra is disabled.
+
 accept_redirects - BOOLEAN
        Accept Redirects.
 
@@ -1204,6 +1502,11 @@ mtu - INTEGER
        Default Maximum Transfer Unit
        Default: 1280 (IPv6 required minimum)
 
+ip_nonlocal_bind - BOOLEAN
+       If set, allows processes to bind() to non-local IPv6 addresses,
+       which can be quite useful - but may break some applications.
+       Default: 0
+
 router_probe_interval - INTEGER
        Minimum interval (in seconds) between Router Probing described
        in RFC4191.
@@ -1224,6 +1527,13 @@ router_solicitations - INTEGER
        routers are present.
        Default: 3
 
+use_oif_addrs_only - BOOLEAN
+       When enabled, the candidate source addresses for destinations
+       routed via this interface are restricted to the set of addresses
+       configured on this interface (vis. RFC 6724, section 4).
+
+       Default: false
+
 use_tempaddr - INTEGER
        Preference for Privacy Extensions (RFC3041).
          <= 0 : disable Privacy Extensions
@@ -1305,6 +1615,54 @@ ndisc_notify - BOOLEAN
        1 - Generate unsolicited neighbour advertisements when device is brought
            up or hardware address changes.
 
+mldv1_unsolicited_report_interval - INTEGER
+       The interval in milliseconds in which the next unsolicited
+       MLDv1 report retransmit will take place.
+       Default: 10000 (10 seconds)
+
+mldv2_unsolicited_report_interval - INTEGER
+       The interval in milliseconds in which the next unsolicited
+       MLDv2 report retransmit will take place.
+       Default: 1000 (1 second)
+
+force_mld_version - INTEGER
+       0 - (default) No enforcement of a MLD version, MLDv1 fallback allowed
+       1 - Enforce to use MLD version 1
+       2 - Enforce to use MLD version 2
+
+suppress_frag_ndisc - INTEGER
+       Control RFC 6980 (Security Implications of IPv6 Fragmentation
+       with IPv6 Neighbor Discovery) behavior:
+       1 - (default) discard fragmented neighbor discovery packets
+       0 - allow fragmented neighbor discovery packets
+
+optimistic_dad - BOOLEAN
+       Whether to perform Optimistic Duplicate Address Detection (RFC 4429).
+               0: disabled (default)
+               1: enabled
+
+use_optimistic - BOOLEAN
+       If enabled, do not classify optimistic addresses as deprecated during
+       source address selection.  Preferred addresses will still be chosen
+       before optimistic addresses, subject to other ranking in the source
+       address selection algorithm.
+               0: disabled (default)
+               1: enabled
+
+stable_secret - IPv6 address
+       This IPv6 address will be used as a secret to generate IPv6
+       addresses for link-local addresses and autoconfigured
+       ones. All addresses generated after setting this secret will
+       be stable privacy ones by default. This can be changed via the
+       addrgenmode ip-link. conf/default/stable_secret is used as the
+       secret for the namespace, the interface specific ones can
+       overwrite that. Writes to conf/all/stable_secret are refused.
+
+       It is recommended to generate this secret during installation
+       of a system and keep it stable after that.
+
+       By default the stable secret is unset.
+
 icmp/*:
 ratelimit - INTEGER
        Limit the maximal rates for sending ICMPv6 packets.
@@ -1312,6 +1670,12 @@ ratelimit - INTEGER
        otherwise the minimal space between responses in milliseconds.
        Default: 1000
 
+xfrm6_gc_thresh - INTEGER
+       The threshold at which we will start garbage collecting for IPv6
+       destination cache entries.  At twice this value the system will
+       refuse new allocations. The value must be set below the flowcache
+       limit (4096 * number of online cpus) to take effect.
+
 
 IPv6 Update by:
 Pekka Savola <pekkas@netcore.fi>