{
    "content": [
        {
            "type": "text",
            "text": "# ip-tunnel(8) (man)\n\n**Summary:** ip-tunnel - tunnel configuration\n\n## See Also\n\n- ip(8)\n\n## Section Outline\n\n- **NAME** (2 lines)\n- **SYNOPSIS** (1 lines) — 1 subsections\n  - ip tunnel help (23 lines)\n- **DESCRIPTION** (5 lines) — 5 subsections\n  - ip tunnel add (2 lines)\n  - ip tunnel change (2 lines)\n  - ip tunnel delete (99 lines)\n  - ip tunnel prl (14 lines)\n  - ip tunnel show (3 lines)\n- **SEE ALSO** (3 lines)\n- **AUTHOR** (5 lines)\n\n## Full Content\n\n### NAME\n\nip-tunnel - tunnel configuration\n\n### SYNOPSIS\n\n#### ip tunnel help\n\nip [ OPTIONS ] tunnel { add | change | del | show | prl | 6rd } [ NAME ]\n[ mode MODE ] [ remote ADDR ] [ local ADDR ]\n[ [i|o]seq ] [ [i|o]key KEY ] [ [i|o]csum ] ]\n[ encaplimit ELIM ] [ ttl|hoplimit TTL ]\n[ tos TOS ] [ flowlabel FLOWLABEL ]\n[ prl-default ADDR ] [ prl-nodefault ADDR ] [ prl-delete ADDR ]\n[ 6rd-prefix ADDR ] [ 6rd-relayprefix ADDR ] [ 6rd-reset ]\n[ [no]pmtudisc ] [ [no]ignore-df ] [ [no]allow-localremote ]\n[ dev PHYSDEV ]\n\nMODE :=  { ipip | gre | sit | isatap | vti | ip6ip6 | ipip6 | ip6gre | vti6 | any }\n\nADDR := { IPADDRESS | any }\n\nTOS := { STRING | 00..ff | inherit | inherit/STRING | inherit/00..ff }\n\nELIM := { none | 0..255 }\n\nTTL := { 1..255 | inherit }\n\nKEY := { DOTTEDQUAD | NUMBER }\n\n### DESCRIPTION\n\ntunnel objects are tunnels, encapsulating packets in IP packets and then sending them over\nthe IP infrastructure.  The encapsulating (or outer) address family is specified by the -f\noption. The default is IPv4.\n\n#### ip tunnel add\n\nadd a new tunnel\n\n#### ip tunnel change\n\nchange an existing tunnel\n\n#### ip tunnel delete\n\ndestroy a tunnel\n\nname NAME (default)\nselect the tunnel device name.\n\n\nmode MODE\nset the tunnel mode. Available modes depend on the encapsulating address fam‐\nily.\nModes for IPv4 encapsulation available: ipip, sit, isatap, vti, and gre.\nModes for IPv6 encapsulation available: ip6ip6, ipip6, ip6gre, vti6, and any.\n\n\nremote ADDRESS\nset the remote endpoint of the tunnel.\n\n\nlocal ADDRESS\nset the fixed local address for tunneled packets.  It must be an address on an‐\nother interface of this host.\n\n\nttl N\n\nhoplimit N\nset a fixed TTL (IPv4) or hoplimit (IPv6) N on tunneled packets.  N is a number\nin the range 1--255. 0 is a special value meaning that packets inherit the TTL\nvalue.  The default value for IPv4 tunnels is: inherit.  The default value for\nIPv6 tunnels is: 64.\n\n\n\ntos T\n\ndsfield T\n\ntclass T\nset the type of service (IPv4) or traffic class (IPv6) field on tunneled pack‐\nets, which can be specified as either a two-digit hex value (e.g. c0) or a pre‐\ndefined string (e.g. internet).  The value inherit causes the field to be\ncopied from the original IP header. The values inherit/STRING or inherit/00..ff\nwill set the field to STRING or 00..ff when tunneling non-IP packets. The de‐\nfault value is 00.\n\n\ndev NAME\nbind the tunnel to the device NAME so that tunneled packets will only be routed\nvia this device and will not be able to escape to another device when the route\nto endpoint changes.\n\n\nnopmtudisc\ndisable Path MTU Discovery on this tunnel.  It is enabled by default. Note that\na fixed ttl is incompatible with this option: tunneling with a fixed ttl always\nmakes pmtu discovery.\n\n\nignore-df\nenable IPv4 DF suppression on this tunnel.  Normally datagrams that exceed the\nMTU will be fragmented; the presence of the DF flag inhibits this, resulting\ninstead in an ICMP Unreachable (Fragmentation Required) message.  Enabling this\nattribute causes the DF flag to be ignored.\n\n\nkey K\n\nikey K\n\nokey K ( only GRE tunnels ) use keyed GRE with key K. K is either a number or an IP\naddress-like dotted quad.  The key parameter sets the key to use in both direc‐\ntions.  The ikey and okey parameters set different keys for input and output.\n\n\ncsum, icsum, ocsum\n( only GRE tunnels ) generate/require checksums for tunneled packets.  The oc‐‐\nsum flag calculates checksums for outgoing packets.  The icsum flag requires\nthat all input packets have the correct checksum. The csum flag is equivalent\nto the combination icsum ocsum.\n\n\nseq, iseq, oseq\n( only GRE tunnels ) serialize packets.  The oseq flag enables sequencing of\noutgoing packets.  The iseq flag requires that all input packets are serial‐\nized.  The seq flag is equivalent to the combination iseq oseq.  It doesn't\nwork. Don't use it.\n\n\nencaplimit ELIM\n( only IPv6 tunnels ) set a fixed encapsulation limit. Default is 4.\n\n\nflowlabel FLOWLABEL\n( only IPv6 tunnels ) set a fixed flowlabel.\n\n\nallow-localremote\n( only IPv6 tunnels ) allow remote endpoint on the local host.\n\n#### ip tunnel prl\n\npotential router list (ISATAP only)\n\ndev NAME\nmandatory device name.\n\n\nprl-default ADDR\n\nprl-nodefault ADDR\n\nprl-delete ADDR\nAdd or delete ADDR as a potential router or default router.\n\n#### ip tunnel show\n\nlist tunnels This command has no arguments.\n\n### SEE ALSO\n\nip(8)\n\n### AUTHOR\n\nOriginal Manpage by Michail Litvak <mci@owl.openwall.com>\n\n\n\niproute2                                     20 Dec 2011                                IP-TUNNEL(8)\n\n"
        }
    ],
    "structuredContent": {
        "command": "ip-tunnel",
        "section": "8",
        "mode": "man",
        "summary": "ip-tunnel - tunnel configuration",
        "synopsis": "",
        "flags": [],
        "examples": [],
        "see_also": [
            {
                "name": "ip",
                "section": "8",
                "url": "https://www.chedong.com/phpMan.php/man/ip/8/json"
            }
        ],
        "section_outline": [
            {
                "name": "NAME",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "SYNOPSIS",
                "lines": 1,
                "subsections": [
                    {
                        "name": "ip tunnel help",
                        "lines": 23
                    }
                ]
            },
            {
                "name": "DESCRIPTION",
                "lines": 5,
                "subsections": [
                    {
                        "name": "ip tunnel add",
                        "lines": 2
                    },
                    {
                        "name": "ip tunnel change",
                        "lines": 2
                    },
                    {
                        "name": "ip tunnel delete",
                        "lines": 99
                    },
                    {
                        "name": "ip tunnel prl",
                        "lines": 14
                    },
                    {
                        "name": "ip tunnel show",
                        "lines": 3
                    }
                ]
            },
            {
                "name": "SEE ALSO",
                "lines": 3,
                "subsections": []
            },
            {
                "name": "AUTHOR",
                "lines": 5,
                "subsections": []
            }
        ]
    }
}