1IP-LINK(8) Linux IP-LINK(8)
2
3
4
6 ip-link - network device configuration
7
9 ip link { COMMAND | help }
10
11
12 ip link add [ link DEVICE ] [ name ] NAME
13 [ txqueuelen PACKETS ]
14 [ address LLADDR ] [ broadcast LLADDR ]
15 [ mtu MTU ] [ index IDX ]
16 [ numtxqueues QUEUE_COUNT ] [ numrxqueues QUEUE_COUNT ]
17 [ gso_max_size BYTES ] [ gso_max_segs SEGMENTS ]
18 type TYPE [ ARGS ]
19
20 ip link delete { DEVICE | group GROUP } type TYPE [ ARGS ]
21
22 ip link set { DEVICE | group GROUP }
23 [ { up | down } ]
24 [ type ETYPE TYPE_ARGS ]
25 [ arp { on | off } ]
26 [ dynamic { on | off } ]
27 [ multicast { on | off } ]
28 [ allmulticast { on | off } ]
29 [ promisc { on | off } ]
30 [ protodown { on | off } ]
31 [ protodown_reason PREASON { on | off } ]
32 [ trailers { on | off } ]
33 [ txqueuelen PACKETS ]
34 [ name NEWNAME ]
35 [ address LLADDR ]
36 [ broadcast LLADDR ]
37 [ mtu MTU ]
38 [ netns { PID | NETNSNAME } ]
39 [ link-netnsid ID ]
40 [ alias NAME ]
41 [ vf NUM [ mac LLADDR ]
42 [ VFVLAN-LIST ]
43 [ rate TXRATE ]
44 [ max_tx_rate TXRATE ]
45 [ min_tx_rate TXRATE ]
46 [ spoofchk { on | off } ]
47 [ query_rss { on | off } ]
48 [ state { auto | enable | disable } ]
49 [ trust { on | off } ]
50 [ node_guid eui64 ]
51 [ port_guid eui64 ] ]
52 [ { xdp | xdpgeneric | xdpdrv | xdpoffload } { off |
53 object FILE [ section NAME ] [ verbose ] |
54 pinned FILE } ]
55 [ master DEVICE ]
56 [ nomaster ]
57 [ vrf NAME ]
58 [ addrgenmode { eui64 | none | stable_secret | random } ]
59 [ macaddr [ MACADDR ]
60 [ { flush | add | del } MACADDR ]
61 [ set MACADDR ] ]
62
63 ip link show [ DEVICE | group GROUP ] [ up ] [ master DEVICE
64 ] [ type ETYPE ] [ vrf NAME ]
65
66 ip link xstats type TYPE [ ARGS ]
67
68 ip link afstats [ dev DEVICE ]
69
70 ip link help [ TYPE ]
71
72 TYPE := [ bridge | bond | can | dummy | hsr | ifb | ipoib |
73 macvlan | macvtap | vcan | vxcan | veth | vlan |
74 vxlan | ip6tnl | ipip | sit | gre | gretap | erspan |
75 ip6gre | ip6gretap | ip6erspan | vti | nlmon | ipvlan
76 | ipvtap | lowpan | geneve | bareudp | vrf | macsec |
77 netdevsim | rmnet | xfrm ]
78
79 ETYPE := [ TYPE | bridge_slave | bond_slave ]
80
81 VFVLAN-LIST := [ VFVLAN-LIST ] VFVLAN
82
83 VFVLAN := [ vlan VLANID [ qos VLAN-QOS ] [ proto VLAN-PROTO ]
84 ]
85
86 ip link property add [ altname NAME .. ]
87
88 ip link property del [ altname NAME .. ]
89
90
92 ip link add - add virtual link
93 link DEVICE
94 specifies the physical device to act operate on.
95
96 NAME specifies the name of the new virtual device.
97
98 TYPE specifies the type of the new device.
99
100 Link types:
101
102 bridge - Ethernet Bridge device
103
104 bond - Bonding device
105
106 dummy - Dummy network interface
107
108 hsr - High-availability Seamless Redundancy device
109
110 ifb - Intermediate Functional Block device
111
112 ipoib - IP over Infiniband device
113
114 macvlan - Virtual interface base on link layer address
115 (MAC)
116
117 macvtap - Virtual interface based on link layer address
118 (MAC) and TAP.
119
120 vcan - Virtual Controller Area Network interface
121
122 vxcan - Virtual Controller Area Network tunnel interface
123
124 veth - Virtual ethernet interface
125
126 vlan - 802.1q tagged virtual LAN interface
127
128 vxlan - Virtual eXtended LAN
129
130 ip6tnl - Virtual tunnel interface IPv4|IPv6 over IPv6
131
132 ipip - Virtual tunnel interface IPv4 over IPv4
133
134 sit - Virtual tunnel interface IPv6 over IPv4
135
136 gre - Virtual tunnel interface GRE over IPv4
137
138 gretap - Virtual L2 tunnel interface GRE over IPv4
139
140 erspan - Encapsulated Remote SPAN over GRE and IPv4
141
142 ip6gre - Virtual tunnel interface GRE over IPv6
143
144 ip6gretap - Virtual L2 tunnel interface GRE over IPv6
145
146 ip6erspan - Encapsulated Remote SPAN over GRE and IPv6
147
148 vti - Virtual tunnel interface
149
150 nlmon - Netlink monitoring device
151
152 ipvlan - Interface for L3 (IPv6/IPv4) based VLANs
153
154 ipvtap - Interface for L3 (IPv6/IPv4) based VLANs and
155 TAP
156
157 lowpan - Interface for 6LoWPAN (IPv6) over IEEE 802.15.4
158 / Bluetooth
159
160 geneve - GEneric NEtwork Virtualization Encapsulation
161
162 bareudp - Bare UDP L3 encapsulation support
163
164 macsec - Interface for IEEE 802.1AE MAC Security (MAC‐
165 sec)
166
167 vrf - Interface for L3 VRF domains
168
169 netdevsim - Interface for netdev API tests
170
171 rmnet - Qualcomm rmnet device
172
173 xfrm - Virtual xfrm interface
174
175
176 numtxqueues QUEUE_COUNT
177 specifies the number of transmit queues for new device.
178
179
180 numrxqueues QUEUE_COUNT
181 specifies the number of receive queues for new device.
182
183
184 gso_max_size BYTES
185 specifies the recommended maximum size of a Generic Segment Off‐
186 load packet the new device should accept.
187
188
189 gso_max_segs SEGMENTS
190 specifies the recommended maximum number of a Generic Segment
191 Offload segments the new device should accept.
192
193
194 index IDX
195 specifies the desired index of the new virtual device. The link
196 creation fails, if the index is busy.
197
198
199 VLAN Type Support
200 For a link of type VLAN the following additional arguments are
201 supported:
202
203 ip link add link DEVICE name NAME type vlan [ protocol
204 VLAN_PROTO ] id VLANID [ reorder_hdr { on | off } ] [ gvrp { on
205 | off } ] [ mvrp { on | off } ] [ loose_binding { on | off } ] [
206 bridge_binding { on | off } ] [ ingress-qos-map QOS-MAP ] [
207 egress-qos-map QOS-MAP ]
208
209
210 protocol VLAN_PROTO - either 802.1Q or 802.1ad.
211
212 id VLANID - specifies the VLAN Identifier to use. Note
213 that numbers with a leading " 0 " or " 0x " are inter‐
214 preted as octal or hexadecimal, respectively.
215
216 reorder_hdr { on | off } - specifies whether ethernet
217 headers are reordered or not (default is on).
218
219 If reorder_hdr is on then VLAN header will be not
220 inserted immediately but only before passing to the
221 physical device (if this device does not support
222 VLAN offloading), the similar on the RX direction -
223 by default the packet will be untagged before being
224 received by VLAN device. Reordering allows to accel‐
225 erate tagging on egress and to hide VLAN header on
226 ingress so the packet looks like regular Ethernet
227 packet, at the same time it might be confusing for
228 packet capture as the VLAN header does not exist
229 within the packet.
230
231 VLAN offloading can be checked by ethtool(8):
232
233 ethtool -k <phy_dev> | grep tx-vlan-offload
234
235 where <phy_dev> is the physical device to which VLAN
236 device is bound.
237
238 gvrp { on | off } - specifies whether this VLAN should
239 be registered using GARP VLAN
240 Registration Protocol.
241
242 mvrp { on | off } - specifies whether this VLAN should
243 be registered using Multiple VLAN
244 Registration Protocol.
245
246 loose_binding { on | off } - specifies whether the VLAN
247 device state is bound to the physical device state.
248
249 bridge_binding { on | off } - specifies whether the VLAN
250 device link state tracks the state of bridge ports that
251 are members of the VLAN.
252
253 ingress-qos-map QOS-MAP - defines a mapping of VLAN
254 header prio field to the Linux internal packet priority
255 on incoming frames. The format is FROM:TO with multiple
256 mappings separated by spaces.
257
258 egress-qos-map QOS-MAP - defines a mapping of Linux in‐
259 ternal packet priority to VLAN header prio field but for
260 outgoing frames. The format is the same as for ingress-
261 qos-map.
262
263 Linux packet priority can be set by iptables(8):
264
265 iptables -t mangle -A POSTROUTING [...] -j CLAS‐
266 SIFY --set-class 0:4
267
268 and this "4" priority can be used in the egress qos
269 mapping to set VLAN prio "5":
270
271 ip link set veth0.10 type vlan egress 4:5
272
273
274 VXLAN Type Support
275 For a link of type VXLAN the following additional arguments are
276 supported:
277
278 ip link add DEVICE type vxlan id VNI [ dev PHYS_DEV ] [ { group
279 | remote } IPADDR ] [ local { IPADDR | any } ] [ ttl TTL ] [ tos
280 TOS ] [ df DF ] [ flowlabel FLOWLABEL ] [ dstport PORT ] [ src‐
281 port MIN MAX ] [ [no]learning ] [ [no]proxy ] [ [no]rsc ] [
282 [no]l2miss ] [ [no]l3miss ] [ [no]udpcsum ] [ [no]udp6zerocsumtx
283 ] [ [no]udp6zerocsumrx ] [ ageing SECONDS ] [ maxaddress NUMBER
284 ] [ [no]external ] [ gbp ] [ gpe ]
285
286
287 id VNI - specifies the VXLAN Network Identifier (or
288 VXLAN Segment Identifier) to use.
289
290 dev PHYS_DEV - specifies the physical device to use for
291 tunnel endpoint communication.
292
293
294 group IPADDR - specifies the multicast IP address to
295 join. This parameter cannot be specified with the re‐
296 mote parameter.
297
298
299 remote IPADDR - specifies the unicast destination IP ad‐
300 dress to use in outgoing packets when the destination
301 link layer address is not known in the VXLAN device for‐
302 warding database. This parameter cannot be specified
303 with the group parameter.
304
305
306 local IPADDR - specifies the source IP address to use in
307 outgoing packets.
308
309
310 ttl TTL - specifies the TTL value to use in outgoing
311 packets.
312
313
314 tos TOS - specifies the TOS value to use in outgoing
315 packets.
316
317
318 df DF - specifies the usage of the Don't Fragment flag
319 (DF) bit in outgoing packets with IPv4 headers. The
320 value inherit causes the bit to be copied from the orig‐
321 inal IP header. The values unset and set cause the bit
322 to be always unset or always set, respectively. By de‐
323 fault, the bit is not set.
324
325
326 flowlabel FLOWLABEL - specifies the flow label to use in
327 outgoing packets.
328
329
330 dstport PORT - specifies the UDP destination port to
331 communicate to the remote
332 VXLAN tunnel endpoint.
333
334
335 srcport MIN MAX - specifies the range of port numbers to
336 use as UDP source ports to communicate to the remote
337 VXLAN tunnel endpoint.
338
339
340 [no]learning - specifies if unknown source link layer
341 addresses and IP addresses are entered into the VXLAN
342 device forwarding database.
343
344
345 [no]rsc - specifies if route short circuit is turned on.
346
347
348 [no]proxy - specifies ARP proxy is turned on.
349
350
351 [no]l2miss - specifies if netlink LLADDR miss notifica‐
352 tions are generated.
353
354
355 [no]l3miss - specifies if netlink IP ADDR miss notifica‐
356 tions are generated.
357
358
359 [no]udpcsum - specifies if UDP checksum is calculated
360 for transmitted packets over IPv4.
361
362
363 [no]udp6zerocsumtx - skip UDP checksum calculation for
364 transmitted packets over IPv6.
365
366
367 [no]udp6zerocsumrx - allow incoming UDP packets over
368 IPv6 with zero checksum field.
369
370
371 ageing SECONDS - specifies the lifetime in seconds of
372 FDB entries learnt by the kernel.
373
374
375 maxaddress NUMBER - specifies the maximum number of FDB
376 entries.
377
378
379 [no]external - specifies whether an external control
380 plane (e.g. ip route encap) or the internal FDB should
381 be used.
382
383
384 gbp - enables the Group Policy extension (VXLAN-GBP).
385
386 Allows to transport group policy context across
387 VXLAN network peers. If enabled, includes the mark
388 of a packet in the VXLAN header for outgoing packets
389 and fills the packet mark based on the information
390 found in the VXLAN header for incoming packets.
391
392 Format of upper 16 bits of packet mark (flags);
393
394 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
395 |-|-|-|-|-|-|-|-|-|D|-|-|A|-|-|-|
396 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
397
398 D := Don't Learn bit. When set, this bit indicates
399 that the egress VTEP MUST NOT learn the source ad‐
400 dress of the encapsulated frame.
401
402 A := Indicates that the group policy has already
403 been applied to this packet. Policies MUST NOT be
404 applied by devices when the A bit is set.
405
406 Format of lower 16 bits of packet mark (policy ID):
407
408 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
409 | Group Policy ID |
410 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
411
412 Example:
413 iptables -A OUTPUT [...] -j MARK --set-mark
414 0x800FF
415
416
417
418 gpe - enables the Generic Protocol extension (VXLAN-
419 GPE). Currently, this is only supported together with
420 the external keyword.
421
422
423
424 VETH, VXCAN Type Support
425 For a link of types VETH/VXCAN the following additional argu‐
426 ments are supported:
427
428 ip link add DEVICE type { veth | vxcan } [ peer name NAME ]
429
430
431 peer name NAME - specifies the virtual pair device name
432 of the VETH/VXCAN tunnel.
433
434
435
436 IPIP, SIT Type Support
437 For a link of type IPIPorSIT the following additional arguments
438 are supported:
439
440 ip link add DEVICE type { ipip | sit } remote ADDR local ADDR [
441 encap { fou | gue | none } ] [ encap-sport { PORT | auto } ] [
442 encap-dport PORT ] [ [no]encap-csum ] [ [no]encap-remcsum ] [
443 mode { ip6ip | ipip | mplsip | any } ] [ external ]
444
445
446 remote ADDR - specifies the remote address of the tun‐
447 nel.
448
449
450 local ADDR - specifies the fixed local address for tun‐
451 neled packets. It must be an address on another inter‐
452 face on this host.
453
454
455 encap { fou | gue | none } - specifies type of secondary
456 UDP encapsulation. "fou" indicates Foo-Over-UDP, "gue"
457 indicates Generic UDP Encapsulation.
458
459
460 encap-sport { PORT | auto } - specifies the source port
461 in UDP encapsulation. PORT indicates the port by num‐
462 ber, "auto" indicates that the port number should be
463 chosen automatically (the kernel picks a flow based on
464 the flow hash of the encapsulated packet).
465
466
467 [no]encap-csum - specifies if UDP checksums are enabled
468 in the secondary encapsulation.
469
470
471 [no]encap-remcsum - specifies if Remote Checksum Offload
472 is enabled. This is only applicable for Generic UDP En‐
473 capsulation.
474
475
476 mode { ip6ip | ipip | mplsip | any } - specifies mode in
477 which device should run. "ip6ip" indicates IPv6-Over-
478 IPv4, "ipip" indicates "IPv4-Over-IPv4", "mplsip" indi‐
479 cates MPLS-Over-IPv4, "any" indicates IPv6, IPv4 or MPLS
480 Over IPv4. Supported for SIT where the default is
481 "ip6ip" and IPIP where the default is "ipip".
482 IPv6-Over-IPv4 is not supported for IPIP.
483
484
485 external - make this tunnel externally controlled (e.g.
486 ip route encap).
487
488
489 GRE Type Support
490 For a link of type GRE or GRETAP the following additional argu‐
491 ments are supported:
492
493 ip link add DEVICE type { gre | gretap } remote ADDR local ADDR
494 [ [no][i|o]seq ] [ [i|o]key KEY | no[i|o]key ] [ [no][i|o]csum ]
495 [ ttl TTL ] [ tos TOS ] [ [no]pmtudisc ] [ [no]ignore-df ] [ dev
496 PHYS_DEV ] [ encap { fou | gue | none } ] [ encap-sport { PORT |
497 auto } ] [ encap-dport PORT ] [ [no]encap-csum ] [ [no]encap-
498 remcsum ] [ external ]
499
500
501 remote ADDR - specifies the remote address of the tun‐
502 nel.
503
504
505 local ADDR - specifies the fixed local address for tun‐
506 neled packets. It must be an address on another inter‐
507 face on this host.
508
509
510 [no][i|o]seq - serialize packets. The oseq flag enables
511 sequencing of outgoing packets. The iseq flag requires
512 that all input packets are serialized.
513
514
515 [i|o]key KEY | no[i|o]key - use keyed GRE with key KEY.
516 KEY is either a number or an IPv4 address-like dotted
517 quad. The key parameter specifies the same key to use
518 in both directions. The ikey and okey parameters spec‐
519 ify different keys for input and output.
520
521
522 [no][i|o]csum - generate/require checksums for tunneled
523 packets. The ocsum flag calculates checksums for outgo‐
524 ing packets. The icsum flag requires that all input
525 packets have the correct checksum. The csum flag is
526 equivalent to the combination icsum ocsum .
527
528
529 ttl TTL - specifies the TTL value to use in outgoing
530 packets.
531
532
533 tos TOS - specifies the TOS value to use in outgoing
534 packets.
535
536
537 [no]pmtudisc - enables/disables Path MTU Discovery on
538 this tunnel. It is enabled by default. Note that a
539 fixed ttl is incompatible with this option: tunneling
540 with a fixed ttl always makes pmtu discovery.
541
542
543 [no]ignore-df - enables/disables IPv4 DF suppression on
544 this tunnel. Normally datagrams that exceed the MTU
545 will be fragmented; the presence of the DF flag inhibits
546 this, resulting instead in an ICMP Unreachable (Fragmen‐
547 tation Required) message. Enabling this attribute
548 causes the DF flag to be ignored.
549
550
551 dev PHYS_DEV - specifies the physical device to use for
552 tunnel endpoint communication.
553
554
555 encap { fou | gue | none } - specifies type of secondary
556 UDP encapsulation. "fou" indicates Foo-Over-UDP, "gue"
557 indicates Generic UDP Encapsulation.
558
559
560 encap-sport { PORT | auto } - specifies the source port
561 in UDP encapsulation. PORT indicates the port by num‐
562 ber, "auto" indicates that the port number should be
563 chosen automatically (the kernel picks a flow based on
564 the flow hash of the encapsulated packet).
565
566
567 [no]encap-csum - specifies if UDP checksums are enabled
568 in the secondary encapsulation.
569
570
571 [no]encap-remcsum - specifies if Remote Checksum Offload
572 is enabled. This is only applicable for Generic UDP En‐
573 capsulation.
574
575
576 external - make this tunnel externally controlled (e.g.
577 ip route encap).
578
579
580
581 IP6GRE/IP6GRETAP Type Support
582 For a link of type IP6GRE/IP6GRETAP the following additional ar‐
583 guments are supported:
584
585 ip link add DEVICE type { ip6gre | ip6gretap } remote ADDR local
586 ADDR [ [no][i|o]seq ] [ [i|o]key KEY | no[i|o]key ] [
587 [no][i|o]csum ] [ hoplimit TTL ] [ encaplimit ELIM ] [ tclass
588 TCLASS ] [ flowlabel FLOWLABEL ] [ dscp inherit ] [ [no]allow-
589 localremote ] [ dev PHYS_DEV ] [ external ]
590
591
592 remote ADDR - specifies the remote IPv6 address of the
593 tunnel.
594
595
596 local ADDR - specifies the fixed local IPv6 address for
597 tunneled packets. It must be an address on another in‐
598 terface on this host.
599
600
601 [no][i|o]seq - serialize packets. The oseq flag enables
602 sequencing of outgoing packets. The iseq flag requires
603 that all input packets are serialized.
604
605
606 [i|o]key KEY | no[i|o]key - use keyed GRE with key KEY.
607 KEY is either a number or an IPv4 address-like dotted
608 quad. The key parameter specifies the same key to use
609 in both directions. The ikey and okey parameters spec‐
610 ify different keys for input and output.
611
612
613 [no][i|o]csum - generate/require checksums for tunneled
614 packets. The ocsum flag calculates checksums for outgo‐
615 ing packets. The icsum flag requires that all input
616 packets have the correct checksum. The csum flag is
617 equivalent to the combination icsum ocsum.
618
619
620 hoplimit TTL - specifies Hop Limit value to use in out‐
621 going packets.
622
623
624 encaplimit ELIM - specifies a fixed encapsulation limit.
625 Default is 4.
626
627
628 flowlabel FLOWLABEL - specifies a fixed flowlabel.
629
630
631 [no]allow-localremote - specifies whether to allow re‐
632 mote endpoint to have an address configured on local
633 host.
634
635
636 tclass TCLASS - specifies the traffic class field on
637 tunneled packets, which can be specified as either a
638 two-digit hex value (e.g. c0) or a predefined string
639 (e.g. internet). The value inherit causes the field to
640 be copied from the original IP header. The values in‐
641 herit/STRING or inherit/00..ff will set the field to
642 STRING or 00..ff when tunneling non-IP packets. The de‐
643 fault value is 00.
644
645
646 external - make this tunnel externally controlled (or
647 not, which is the default). In the kernel, this is re‐
648 ferred to as collect metadata mode. This flag is mutu‐
649 ally exclusive with the remote, local, seq, key, csum,
650 hoplimit, encaplimit, flowlabel and tclass options.
651
652
653
654 IPoIB Type Support
655 For a link of type IPoIB the following additional arguments are
656 supported:
657
658 ip link add DEVICE name NAME type ipoib [ pkey PKEY ] [ mode
659 MODE ]
660
661
662 pkey PKEY - specifies the IB P-Key to use.
663
664 mode MODE - specifies the mode (datagram or connected)
665 to use.
666
667
668 ERSPAN Type Support
669 For a link of type ERSPAN/IP6ERSPAN the following additional ar‐
670 guments are supported:
671
672 ip link add DEVICE type { erspan | ip6erspan } remote ADDR local
673 ADDR seq key KEY erspan_ver version [ erspan IDX ] [ erspan_dir
674 { ingress | egress } ] [ erspan_hwid hwid ] [ [no]allow-localre‐
675 mote ] [ external ]
676
677
678 remote ADDR - specifies the remote address of the tun‐
679 nel.
680
681
682 local ADDR - specifies the fixed local address for tun‐
683 neled packets. It must be an address on another inter‐
684 face on this host.
685
686
687 erspan_ver version - specifies the ERSPAN version num‐
688 ber. version indicates the ERSPAN version to be cre‐
689 ated: 0 for version 0 type I, 1 for version 1 (type II)
690 or 2 for version 2 (type III).
691
692
693 erspan IDX - specifies the ERSPAN v1 index field. IDX
694 indicates a 20 bit index/port number associated with the
695 ERSPAN traffic's source port and direction.
696
697
698 erspan_dir { ingress | egress } - specifies the ERSPAN
699 v2 mirrored traffic's direction.
700
701
702 erspan_hwid hwid - an unique identifier of an ERSPAN v2
703 engine within a system. hwid is a 6-bit value for users
704 to configure.
705
706
707 [no]allow-localremote - specifies whether to allow re‐
708 mote endpoint to have an address configured on local
709 host.
710
711
712 external - make this tunnel externally controlled (or
713 not, which is the default). In the kernel, this is re‐
714 ferred to as collect metadata mode. This flag is mutu‐
715 ally exclusive with the remote, local, erspan_ver,
716 erspan, erspan_dir and erspan_hwid options.
717
718
719
720 GENEVE Type Support
721 For a link of type GENEVE the following additional arguments are
722 supported:
723
724 ip link add DEVICE type geneve id VNI remote IPADDR [ ttl TTL ]
725 [ tos TOS ] [ df DF ] [ flowlabel FLOWLABEL ] [ dstport PORT ] [
726 [no]external ] [ [no]udpcsum ] [ [no]udp6zerocsumtx ] [
727 [no]udp6zerocsumrx ]
728
729
730 id VNI - specifies the Virtual Network Identifier to
731 use.
732
733
734 remote IPADDR - specifies the unicast destination IP ad‐
735 dress to use in outgoing packets.
736
737
738 ttl TTL - specifies the TTL value to use in outgoing
739 packets. "0" or "auto" means use whatever default value,
740 "inherit" means inherit the inner protocol's ttl. De‐
741 fault option is "0".
742
743
744 tos TOS - specifies the TOS value to use in outgoing
745 packets.
746
747
748 df DF - specifies the usage of the Don't Fragment flag
749 (DF) bit in outgoing packets with IPv4 headers. The
750 value inherit causes the bit to be copied from the orig‐
751 inal IP header. The values unset and set cause the bit
752 to be always unset or always set, respectively. By de‐
753 fault, the bit is not set.
754
755
756 flowlabel FLOWLABEL - specifies the flow label to use in
757 outgoing packets.
758
759
760 dstport PORT - select a destination port other than the
761 default of 6081.
762
763
764 [no]external - make this tunnel externally controlled
765 (or not, which is the default). This flag is mutually
766 exclusive with the id, remote, ttl, tos and flowlabel
767 options.
768
769
770 [no]udpcsum - specifies if UDP checksum is calculated
771 for transmitted packets over IPv4.
772
773
774 [no]udp6zerocsumtx - skip UDP checksum calculation for
775 transmitted packets over IPv6.
776
777
778 [no]udp6zerocsumrx - allow incoming UDP packets over
779 IPv6 with zero checksum field.
780
781
782
783 Bareudp Type Support
784 For a link of type Bareudp the following additional arguments
785 are supported:
786
787 ip link add DEVICE type bareudp dstport PORT ethertype ETHERTYPE
788 [ srcportmin SRCPORTMIN ] [ [no]multiproto ]
789
790
791 dstport PORT - specifies the destination port for the
792 UDP tunnel.
793
794
795 ethertype ETHERTYPE - specifies the ethertype of the L3
796 protocol being tunnelled.
797
798
799 srcportmin SRCPORTMIN - selects the lowest value of the
800 UDP tunnel source port range.
801
802
803 [no]multiproto - activates support for protocols similar
804 to the one specified by ethertype. When ETHERTYPE is
805 "mpls_uc" (that is, unicast MPLS), this allows the tun‐
806 nel to also handle multicast MPLS. When ETHERTYPE is
807 "ipv4", this allows the tunnel to also handle IPv6. This
808 option is disabled by default.
809
810
811 MACVLAN and MACVTAP Type Support
812 For a link of type MACVLAN or MACVTAP the following additional
813 arguments are supported:
814
815 ip link add link DEVICE name NAME type { macvlan | macvtap }
816 mode { private | vepa | bridge | passthru [ nopromisc ] |
817 source }
818
819
820 type { macvlan | macvtap } - specifies the link type to
821 use. macvlan creates just a virtual interface, while
822 macvtap in addition creates a character device /dev/tapX
823 to be used just like a tuntap device.
824
825 mode private - Do not allow communication between
826 macvlan instances on the same physical interface, even
827 if the external switch supports hairpin mode.
828
829 mode vepa - Virtual Ethernet Port Aggregator mode. Data
830 from one macvlan instance to the other on the same phys‐
831 ical interface is transmitted over the physical inter‐
832 face. Either the attached switch needs to support hair‐
833 pin mode, or there must be a TCP/IP router forwarding
834 the packets in order to allow communication. This is the
835 default mode.
836
837 mode bridge - In bridge mode, all endpoints are directly
838 connected to each other, communication is not redirected
839 through the physical interface's peer.
840
841 mode passthru [ nopromisc ] - This mode gives more power
842 to a single endpoint, usually in macvtap mode. It is not
843 allowed for more than one endpoint on the same physical
844 interface. All traffic will be forwarded to this end‐
845 point, allowing virtio guests to change MAC address or
846 set promiscuous mode in order to bridge the interface or
847 create vlan interfaces on top of it. By default, this
848 mode forces the underlying interface into promiscuous
849 mode. Passing the nopromisc flag prevents this, so the
850 promisc flag may be controlled using standard tools.
851
852 mode source - allows one to set a list of allowed mac
853 address, which is used to match against source mac ad‐
854 dress from received frames on underlying interface. This
855 allows creating mac based VLAN associations, instead of
856 standard port or tag based. The feature is useful to de‐
857 ploy 802.1x mac based behavior, where drivers of under‐
858 lying interfaces doesn't allows that.
859
860
861 High-availability Seamless Redundancy (HSR) Support
862 For a link of type HSR the following additional arguments are
863 supported:
864
865 ip link add link DEVICE name NAME type hsr slave1 SLAVE1-IF
866 slave2 SLAVE2-IF [ supervision ADDR-BYTE ] [ version { 0 | 1 } [
867 proto { 0 | 1 } ]
868
869
870 type hsr - specifies the link type to use, here HSR.
871
872 slave1 SLAVE1-IF - Specifies the physical device used
873 for the first of the two ring ports.
874
875 slave2 SLAVE2-IF - Specifies the physical device used
876 for the second of the two ring ports.
877
878 supervision ADDR-BYTE - The last byte of the multicast
879 address used for HSR supervision frames. Default option
880 is "0", possible values 0-255.
881
882 version { 0 | 1 } - Selects the protocol version of the
883 interface. Default option is "0", which corresponds to
884 the 2010 version of the HSR standard. Option "1" acti‐
885 vates the 2012 version.
886
887 proto { 0 | 1 } - Selects the protocol at the interface.
888 Default option is "0", which corresponds to the HSR
889 standard. Option "1" activates the Parallel Redundancy
890 Protocol (PRP).
891
892
893 BRIDGE Type Support
894 For a link of type BRIDGE the following additional arguments are
895 supported:
896
897 ip link add DEVICE type bridge [ ageing_time AGEING_TIME ] [
898 group_fwd_mask MASK ] [ group_address ADDRESS ] [ forward_delay
899 FORWARD_DELAY ] [ hello_time HELLO_TIME ] [ max_age MAX_AGE ] [
900 stp_state STP_STATE ] [ priority PRIORITY ] [ vlan_filtering
901 VLAN_FILTERING ] [ vlan_protocol VLAN_PROTOCOL ] [ vlan_de‐
902 fault_pvid VLAN_DEFAULT_PVID ] [ vlan_stats_enabled
903 VLAN_STATS_ENABLED ] [ vlan_stats_per_port VLAN_STATS_PER_PORT ]
904 [ mcast_snooping MULTICAST_SNOOPING ] [ mcast_router MULTI‐
905 CAST_ROUTER ] [ mcast_query_use_ifaddr MCAST_QUERY_USE_IFADDR ]
906 [ mcast_querier MULTICAST_QUERIER ] [ mcast_hash_elasticity
907 HASH_ELASTICITY ] [ mcast_hash_max HASH_MAX ] [ mcast_last_mem‐
908 ber_count LAST_MEMBER_COUNT ] [ mcast_startup_query_count
909 STARTUP_QUERY_COUNT ] [ mcast_last_member_interval LAST_MEM‐
910 BER_INTERVAL ] [ mcast_membership_interval MEMBERSHIP_INTERVAL ]
911 [ mcast_querier_interval QUERIER_INTERVAL ] [ mcast_query_inter‐
912 val QUERY_INTERVAL ] [ mcast_query_response_interval QUERY_RE‐
913 SPONSE_INTERVAL ] [ mcast_startup_query_interval
914 STARTUP_QUERY_INTERVAL ] [ mcast_stats_enabled MCAST_STATS_EN‐
915 ABLED ] [ mcast_igmp_version IGMP_VERSION ] [ mcast_mld_version
916 MLD_VERSION ] [ nf_call_iptables NF_CALL_IPTABLES ] [
917 nf_call_ip6tables NF_CALL_IP6TABLES ] [ nf_call_arptables
918 NF_CALL_ARPTABLES ]
919
920
921 ageing_time AGEING_TIME - configure the bridge's FDB en‐
922 tries ageing time, ie the number of seconds a MAC ad‐
923 dress will be kept in the FDB after a packet has been
924 received from that address. after this time has passed,
925 entries are cleaned up.
926
927 group_fwd_mask MASK - set the group forward mask. This
928 is the bitmask that is applied to decide whether to for‐
929 ward incoming frames destined to link-local addresses,
930 ie addresses of the form 01:80:C2:00:00:0X (defaults to
931 0, ie the bridge does not forward any link-local
932 frames).
933
934 group_address ADDRESS - set the MAC address of the mul‐
935 ticast group this bridge uses for STP. The address must
936 be a link-local address in standard Ethernet MAC address
937 format, ie an address of the form 01:80:C2:00:00:0X,
938 with X
939 in [0, 4..f].
940
941 forward_delay FORWARD_DELAY - set the forwarding delay
942 in seconds, ie the time spent in LISTENING state (before
943 moving to LEARNING) and in LEARNING state (before moving
944 to FORWARDING). Only relevant if STP is enabled. Valid
945 values are between 2 and 30.
946
947 hello_time HELLO_TIME - set the time in seconds between
948 hello packets sent by the bridge, when it is a root
949 bridge or a designated bridges. Only relevant if STP is
950 enabled. Valid values are between 1 and 10.
951
952 max_age MAX_AGE - set the hello packet timeout, ie the
953 time in seconds until another bridge in the spanning
954 tree is assumed to be dead, after reception of its last
955 hello message. Only relevant if STP is enabled. Valid
956 values are between 6 and 40.
957
958 stp_state STP_STATE - turn spanning tree protocol on
959 (STP_STATE > 0) or off (STP_STATE == 0). for this
960 bridge.
961
962 priority PRIORITY - set this bridge's spanning tree pri‐
963 ority, used during STP root bridge election. PRIORITY
964 is a 16bit unsigned integer.
965
966 vlan_filtering VLAN_FILTERING - turn VLAN filtering on
967 (VLAN_FILTERING > 0) or off (VLAN_FILTERING == 0). When
968 disabled, the bridge will not consider the VLAN tag when
969 handling packets.
970
971 vlan_protocol { 802.1Q | 802.1ad } - set the protocol
972 used for VLAN filtering.
973
974 vlan_default_pvid VLAN_DEFAULT_PVID - set the default
975 PVID (native/untagged VLAN ID) for this bridge.
976
977 vlan_stats_enabled VLAN_STATS_ENABLED - enable
978 (VLAN_STATS_ENABLED == 1) or disable (VLAN_STATS_ENABLED
979 == 0) per-VLAN stats accounting.
980
981 vlan_stats_per_port VLAN_STATS_PER_PORT - enable
982 (VLAN_STATS_PER_PORT == 1) or disable
983 (VLAN_STATS_PER_PORT == 0) per-VLAN per-port stats ac‐
984 counting. Can be changed only when there are no port
985 VLANs configured.
986
987 mcast_snooping MULTICAST_SNOOPING - turn multicast
988 snooping on (MULTICAST_SNOOPING > 0) or off (MULTI‐
989 CAST_SNOOPING == 0).
990
991 mcast_router MULTICAST_ROUTER - set bridge's multicast
992 router if IGMP snooping is enabled. MULTICAST_ROUTER is
993 an integer value having the following meaning:
994
995 0 - disabled.
996
997 1 - automatic (queried).
998
999 2 - permanently enabled.
1000
1001 mcast_query_use_ifaddr MCAST_QUERY_USE_IFADDR - whether
1002 to use the bridge's own IP address as source address for
1003 IGMP queries (MCAST_QUERY_USE_IFADDR > 0) or the default
1004 of 0.0.0.0 (MCAST_QUERY_USE_IFADDR == 0).
1005
1006 mcast_querier MULTICAST_QUERIER - enable (MULTI‐
1007 CAST_QUERIER > 0) or disable (MULTICAST_QUERIER == 0)
1008 IGMP querier, ie sending of multicast queries by the
1009 bridge (default: disabled).
1010
1011 mcast_querier_interval QUERIER_INTERVAL - interval be‐
1012 tween queries sent by other routers. if no queries are
1013 seen after this delay has passed, the bridge will start
1014 to send its own queries (as if mcast_querier was en‐
1015 abled).
1016
1017 mcast_hash_elasticity HASH_ELASTICITY - set multicast
1018 database hash elasticity, ie the maximum chain length in
1019 the multicast hash table (defaults to 4).
1020
1021 mcast_hash_max HASH_MAX - set maximum size of multicast
1022 hash table (defaults to 512, value must be a power of
1023 2).
1024
1025 mcast_last_member_count LAST_MEMBER_COUNT - set multi‐
1026 cast last member count, ie the number of queries the
1027 bridge will send before stopping forwarding a multicast
1028 group after a "leave" message has been received (de‐
1029 faults to 2).
1030
1031 mcast_last_member_interval LAST_MEMBER_INTERVAL - inter‐
1032 val between queries to find remaining members of a
1033 group, after a "leave" message is received.
1034
1035 mcast_startup_query_count STARTUP_QUERY_COUNT - set the
1036 number of IGMP queries to send during startup phase (de‐
1037 faults to 2).
1038
1039 mcast_startup_query_interval STARTUP_QUERY_INTERVAL -
1040 interval between queries in the startup phase.
1041
1042 mcast_query_interval QUERY_INTERVAL - interval between
1043 queries sent by the bridge after the end of the startup
1044 phase.
1045
1046 mcast_query_response_interval QUERY_RESPONSE_INTERVAL -
1047 set the Max Response Time/Maximum Response Delay for
1048 IGMP/MLD queries sent by the bridge.
1049
1050 mcast_membership_interval MEMBERSHIP_INTERVAL - delay
1051 after which the bridge will leave a group, if no member‐
1052 ship reports for this group are received.
1053
1054 mcast_stats_enabled MCAST_STATS_ENABLED - enable
1055 (MCAST_STATS_ENABLED > 0) or disable (MCAST_STATS_EN‐
1056 ABLED == 0) multicast (IGMP/MLD) stats accounting.
1057
1058 mcast_igmp_version IGMP_VERSION - set the IGMP version.
1059
1060 mcast_mld_version MLD_VERSION - set the MLD version.
1061
1062 nf_call_iptables NF_CALL_IPTABLES - enable (NF_CALL_IPT‐
1063 ABLES > 0) or disable (NF_CALL_IPTABLES == 0) iptables
1064 hooks on the bridge.
1065
1066 nf_call_ip6tables NF_CALL_IP6TABLES - enable
1067 (NF_CALL_IP6TABLES > 0) or disable (NF_CALL_IP6TABLES ==
1068 0) ip6tables hooks on the bridge.
1069
1070 nf_call_arptables NF_CALL_ARPTABLES - enable
1071 (NF_CALL_ARPTABLES > 0) or disable (NF_CALL_ARPTABLES ==
1072 0) arptables hooks on the bridge.
1073
1074
1075
1076
1077 MACsec Type Support
1078 For a link of type MACsec the following additional arguments are
1079 supported:
1080
1081 ip link add link DEVICE name NAME type macsec [ [ address
1082 <lladdr> ] port PORT | sci SCI ] [ cipher CIPHER_SUITE ] [
1083 icvlen { 8..16 } ] [ encrypt { on | off } ] [ send_sci { on |
1084 off } ] [ end_station { on | off } ] [ scb { on | off } ] [ pro‐
1085 tect { on | off } ] [ replay { on | off } window { 0..2^32-1 } ]
1086 [ validate { strict | check | disabled } ] [ encodingsa { 0..3 }
1087 ]
1088
1089
1090 address <lladdr> - sets the system identifier component
1091 of secure channel for this MACsec device.
1092
1093
1094 port PORT - sets the port number component of secure
1095 channel for this MACsec device, in a range from 1 to
1096 65535 inclusive. Numbers with a leading " 0 " or " 0x "
1097 are interpreted as octal and hexadecimal, respectively.
1098
1099
1100 sci SCI - sets the secure channel identifier for this
1101 MACsec device. SCI is a 64bit wide number in hexadeci‐
1102 mal format.
1103
1104
1105 cipher CIPHER_SUITE - defines the cipher suite to use.
1106
1107
1108 icvlen LENGTH - sets the length of the Integrity Check
1109 Value (ICV).
1110
1111
1112 encrypt on or encrypt off - switches between authenti‐
1113 cated encryption, or authenticity mode only.
1114
1115
1116 send_sci on or send_sci off - specifies whether the SCI
1117 is included in every packet, or only when it is neces‐
1118 sary.
1119
1120
1121 end_station on or end_station off - sets the End Station
1122 bit.
1123
1124
1125 scb on or scb off - sets the Single Copy Broadcast bit.
1126
1127
1128 protect on or protect off - enables MACsec protection on
1129 the device.
1130
1131
1132 replay on or replay off - enables replay protection on
1133 the device.
1134
1135
1136
1137 window SIZE - sets the size of the replay win‐
1138 dow.
1139
1140
1141
1142 validate strict or validate check or validate disabled -
1143 sets the validation mode on the device.
1144
1145
1146 encodingsa AN - sets the active secure association for
1147 transmission.
1148
1149
1150
1151 VRF Type Support
1152 For a link of type VRF the following additional arguments are
1153 supported:
1154
1155 ip link add DEVICE type vrf table TABLE
1156
1157
1158 table table id associated with VRF device
1159
1160
1161
1162 RMNET Type Support
1163 For a link of type RMNET the following additional arguments are
1164 supported:
1165
1166 ip link add link DEVICE name NAME type rmnet mux_id MUXID
1167
1168
1169 mux_id MUXID - specifies the mux identifier for the rm‐
1170 net device, possible values 1-254.
1171
1172
1173
1174 XFRM Type Support
1175 For a link of type XFRM the following additional arguments are
1176 supported:
1177
1178 ip link add DEVICE type xfrm dev PHYS_DEV [ if_id IF_ID ]
1179
1180
1181 dev PHYS_DEV - specifies the underlying physical inter‐
1182 face from which transform traffic is sent and received.
1183
1184
1185 if_id IF-ID - specifies the hexadecimal lookup key used
1186 to send traffic to and from specific xfrm policies.
1187 Policies must be configured with the same key. If not
1188 set, the key defaults to 0 and will match any policies
1189 which similarly do not have a lookup key configuration.
1190
1191
1192
1193 ip link delete - delete virtual link
1194 dev DEVICE
1195 specifies the virtual device to act operate on.
1196
1197
1198 group GROUP
1199 specifies the group of virtual links to delete. Group 0 is not
1200 allowed to be deleted since it is the default group.
1201
1202
1203 type TYPE
1204 specifies the type of the device.
1205
1206
1207 ip link set - change device attributes
1208 Warning: If multiple parameter changes are requested, ip aborts immedi‐
1209 ately after any of the changes have failed. This is the only case when
1210 ip can move the system to an unpredictable state. The solution is to
1211 avoid changing several parameters with one ip link set call. The modi‐
1212 fier change is equivalent to set.
1213
1214
1215
1216 dev DEVICE
1217 DEVICE specifies network device to operate on. When configuring
1218 SR-IOV Virtual Function (VF) devices, this keyword should spec‐
1219 ify the associated Physical Function (PF) device.
1220
1221
1222 group GROUP
1223 GROUP has a dual role: If both group and dev are present, then
1224 move the device to the specified group. If only a group is spec‐
1225 ified, then the command operates on all devices in that group.
1226
1227
1228 up and down
1229 change the state of the device to UP or DOWN.
1230
1231
1232 arp on or arp off
1233 change the NOARP flag on the device.
1234
1235
1236 multicast on or multicast off
1237 change the MULTICAST flag on the device.
1238
1239
1240 allmulticast on or allmulticast off
1241 change the ALLMULTI flag on the device. When enabled, instructs
1242 network driver to retrieve all multicast packets from the net‐
1243 work to the kernel for further processing.
1244
1245
1246 promisc on or promisc off
1247 change the PROMISC flag on the device. When enabled, activates
1248 promiscuous operation of the network device.
1249
1250
1251 trailers on or trailers off
1252 change the NOTRAILERS flag on the device, NOT used by the Linux
1253 and exists for BSD compatibility.
1254
1255
1256 protodown on or protodown off
1257 change the PROTODOWN state on the device. Indicates that a pro‐
1258 tocol error has been detected on the port. Switch drivers can
1259 react to this error by doing a phys down on the switch port.
1260
1261
1262 protodown_reason PREASON on or off
1263 set PROTODOWN reasons on the device. protodown reason bit names
1264 can be enumerated under /etc/iproute2/protodown_reasons.d/. pos‐
1265 sible reasons bits 0-31
1266
1267
1268 dynamic on or dynamic off
1269 change the DYNAMIC flag on the device. Indicates that address
1270 can change when interface goes down (currently NOT used by the
1271 Linux).
1272
1273
1274 name NAME
1275 change the name of the device. This operation is not recommended
1276 if the device is running or has some addresses already config‐
1277 ured.
1278
1279
1280 txqueuelen NUMBER
1281
1282 txqlen NUMBER
1283 change the transmit queue length of the device.
1284
1285
1286 mtu NUMBER
1287 change the MTU of the device.
1288
1289
1290 address LLADDRESS
1291 change the station address of the interface.
1292
1293
1294 broadcast LLADDRESS
1295
1296 brd LLADDRESS
1297
1298 peer LLADDRESS
1299 change the link layer broadcast address or the peer address when
1300 the interface is POINTOPOINT.
1301
1302
1303 netns NETNSNAME | PID
1304 move the device to the network namespace associated with name
1305 NETNSNAME or process PID.
1306
1307 Some devices are not allowed to change network namespace: loop‐
1308 back, bridge, wireless. These are network namespace local de‐
1309 vices. In such case ip tool will return "Invalid argument" er‐
1310 ror. It is possible to find out if device is local to a single
1311 network namespace by checking netns-local flag in the output of
1312 the ethtool:
1313
1314 ethtool -k DEVICE
1315
1316 To change network namespace for wireless devices the iw tool can
1317 be used. But it allows to change network namespace only for
1318 physical devices and by process PID.
1319
1320
1321 alias NAME
1322 give the device a symbolic name for easy reference.
1323
1324
1325 group GROUP
1326 specify the group the device belongs to. The available groups
1327 are listed in file /etc/iproute2/group.
1328
1329
1330 vf NUM specify a Virtual Function device to be configured. The associ‐
1331 ated PF device must be specified using the dev parameter.
1332
1333 mac LLADDRESS - change the station address for the spec‐
1334 ified VF. The vf parameter must be specified.
1335
1336
1337 vlan VLANID - change the assigned VLAN for the specified
1338 VF. When specified, all traffic sent from the VF will be
1339 tagged with the specified VLAN ID. Incoming traffic will
1340 be filtered for the specified VLAN ID, and will have all
1341 VLAN tags stripped before being passed to the VF. Set‐
1342 ting this parameter to 0 disables VLAN tagging and fil‐
1343 tering. The vf parameter must be specified.
1344
1345
1346 qos VLAN-QOS - assign VLAN QOS (priority) bits for the
1347 VLAN tag. When specified, all VLAN tags transmitted by
1348 the VF will include the specified priority bits in the
1349 VLAN tag. If not specified, the value is assumed to be
1350 0. Both the vf and vlan parameters must be specified.
1351 Setting both vlan and qos as 0 disables VLAN tagging and
1352 filtering for the VF.
1353
1354
1355 proto VLAN-PROTO - assign VLAN PROTOCOL for the VLAN
1356 tag, either 802.1Q or 802.1ad. Setting to 802.1ad, all
1357 traffic sent from the VF will be tagged with VLAN S-Tag.
1358 Incoming traffic will have VLAN S-Tags stripped before
1359 being passed to the VF. Setting to 802.1ad also enables
1360 an option to concatenate another VLAN tag, so both S-TAG
1361 and C-TAG will be inserted/stripped for outgoing/incom‐
1362 ing traffic, respectively. If not specified, the value
1363 is assumed to be 802.1Q. Both the vf and vlan parameters
1364 must be specified.
1365
1366
1367 rate TXRATE -- change the allowed transmit bandwidth, in
1368 Mbps, for the specified VF. Setting this parameter to 0
1369 disables rate limiting. vf parameter must be specified.
1370 Please use new API max_tx_rate option instead.
1371
1372
1373 max_tx_rate TXRATE - change the allowed maximum transmit
1374 bandwidth, in Mbps, for the specified VF. Setting this
1375 parameter to 0 disables rate limiting. vf parameter
1376 must be specified.
1377
1378
1379 min_tx_rate TXRATE - change the allowed minimum transmit
1380 bandwidth, in Mbps, for the specified VF. Minimum
1381 TXRATE should be always <= Maximum TXRATE. Setting this
1382 parameter to 0 disables rate limiting. vf parameter
1383 must be specified.
1384
1385
1386 spoofchk on|off - turn packet spoof checking on or off
1387 for the specified VF.
1388
1389 query_rss on|off - toggle the ability of querying the
1390 RSS configuration of a specific
1391 VF. VF RSS information like RSS hash key may be con‐
1392 sidered sensitive
1393 on some devices where this information is shared be‐
1394 tween VF and PF
1395 and thus its querying may be prohibited by default.
1396
1397 state auto|enable|disable - set the virtual link state
1398 as seen by the specified VF. Setting to auto means a re‐
1399 flection of the PF link state, enable lets the VF to
1400 communicate with other VFs on this host even if the PF
1401 link state is down, disable causes the HW to drop any
1402 packets sent by the VF.
1403
1404 trust on|off - trust the specified VF user. This enables
1405 that VF user can set a specific feature which may impact
1406 security and/or performance. (e.g. VF multicast promis‐
1407 cuous mode)
1408
1409 node_guid eui64 - configure node GUID for Infiniband
1410 VFs.
1411
1412 port_guid eui64 - configure port GUID for Infiniband
1413 VFs.
1414
1415
1416 xdp object | pinned | off
1417 set (or unset) a XDP ("eXpress Data Path") BPF program to run on
1418 every packet at driver level. ip link output will indicate a
1419 xdp flag for the networking device. If the driver does not have
1420 native XDP support, the kernel will fall back to a slower,
1421 driver-independent "generic" XDP variant. The ip link output
1422 will in that case indicate xdpgeneric instead of xdp only. If
1423 the driver does have native XDP support, but the program is
1424 loaded under xdpgeneric object | pinned then the kernel will use
1425 the generic XDP variant instead of the native one. xdpdrv has
1426 the opposite effect of requestsing that the automatic fallback
1427 to the generic XDP variant be disabled and in case driver is not
1428 XDP-capable error should be returned. xdpdrv also disables
1429 hardware offloads. xdpoffload in ip link output indicates that
1430 the program has been offloaded to hardware and can also be used
1431 to request the "offload" mode, much like xdpgeneric it forces
1432 program to be installed specifically in HW/FW of the apater.
1433
1434 off (or none ) - Detaches any currently attached XDP/BPF program
1435 from the given device.
1436
1437 object FILE - Attaches a XDP/BPF program to the given device.
1438 The FILE points to a BPF ELF file (f.e. generated by LLVM) that
1439 contains the BPF program code, map specifications, etc. If a
1440 XDP/BPF program is already attached to the given device, an er‐
1441 ror will be thrown. If no XDP/BPF program is currently attached,
1442 the device supports XDP and the program from the BPF ELF file
1443 passes the kernel verifier, then it will be attached to the de‐
1444 vice. If the option -force is passed to ip then any prior at‐
1445 tached XDP/BPF program will be atomically overridden and no er‐
1446 ror will be thrown in this case. If no section option is passed,
1447 then the default section name ("prog") will be assumed, other‐
1448 wise the provided section name will be used. If no verbose op‐
1449 tion is passed, then a verifier log will only be dumped on load
1450 error. See also EXAMPLES section for usage examples.
1451
1452 section NAME - Specifies a section name that contains the BPF
1453 program code. If no section name is specified, the default one
1454 ("prog") will be used. This option is to be passed with the ob‐
1455 ject option.
1456
1457 verbose - Act in verbose mode. For example, even in case of suc‐
1458 cess, this will print the verifier log in case a program was
1459 loaded from a BPF ELF file.
1460
1461 pinned FILE - Attaches a XDP/BPF program to the given device.
1462 The FILE points to an already pinned BPF program in the BPF file
1463 system. The option section doesn't apply here, but otherwise se‐
1464 mantics are the same as with the option object described al‐
1465 ready.
1466
1467
1468 master DEVICE
1469 set master device of the device (enslave device).
1470
1471
1472 nomaster
1473 unset master device of the device (release device).
1474
1475
1476 addrgenmode eui64|none|stable_secret|random
1477 set the IPv6 address generation mode
1478
1479 eui64 - use a Modified EUI-64 format interface identifier
1480
1481 none - disable automatic address generation
1482
1483 stable_secret - generate the interface identifier based on a
1484 preset
1485 /proc/sys/net/ipv6/conf/{default,DEVICE}/stable_secret
1486
1487 random - like stable_secret, but auto-generate a new random se‐
1488 cret if none is set
1489
1490
1491 link-netnsid
1492 set peer netnsid for a cross-netns interface
1493
1494
1495 type ETYPE TYPE_ARGS
1496 Change type-specific settings. For a list of supported types and
1497 arguments refer to the description of ip link add above. In ad‐
1498 dition to that, it is possible to manipulate settings to slave
1499 devices:
1500
1501
1502 Bridge Slave Support
1503 For a link with master bridge the following additional arguments
1504 are supported:
1505
1506 ip link set type bridge_slave [ fdb_flush ] [ state STATE ] [
1507 priority PRIO ] [ cost COST ] [ guard { on | off } ] [ hairpin {
1508 on | off } ] [ fastleave { on | off } ] [ root_block { on | off
1509 } ] [ learning { on | off } ] [ flood { on | off } ] [ proxy_arp
1510 { on | off } ] [ proxy_arp_wifi { on | off } ] [ mcast_router
1511 MULTICAST_ROUTER ] [ mcast_fast_leave { on | off} ] [
1512 mcast_flood { on | off } ] [ mcast_to_unicast { on | off } ] [
1513 group_fwd_mask MASK ] [ neigh_suppress { on | off } ] [
1514 vlan_tunnel { on | off } ] [ isolated { on | off } ] [
1515 backup_port DEVICE ] [ nobackup_port ]
1516
1517
1518 fdb_flush - flush bridge slave's fdb dynamic entries.
1519
1520 state STATE - Set port state. STATE is a number repre‐
1521 senting the following states: 0 (disabled), 1 (listen‐
1522 ing), 2 (learning), 3 (forwarding), 4 (blocking).
1523
1524 priority PRIO - set port priority (allowed values are
1525 between 0 and 63, inclusively).
1526
1527 cost COST - set port cost (allowed values are between 1
1528 and 65535, inclusively).
1529
1530 guard { on | off } - block incoming BPDU packets on this
1531 port.
1532
1533 hairpin { on | off } - enable hairpin mode on this port.
1534 This will allow incoming packets on this port to be re‐
1535 flected back.
1536
1537 fastleave { on | off } - enable multicast fast leave on
1538 this port.
1539
1540 root_block { on | off } - block this port from becoming
1541 the bridge's root port.
1542
1543 learning { on | off } - allow MAC address learning on
1544 this port.
1545
1546 flood { on | off } - open the flood gates on this port,
1547 i.e. forward all unicast frames to this port also. Re‐
1548 quires proxy_arp and proxy_arp_wifi to be turned off.
1549
1550 proxy_arp { on | off } - enable proxy ARP on this port.
1551
1552 proxy_arp_wifi { on | off } - enable proxy ARP on this
1553 port which meets extended requirements by IEEE 802.11
1554 and Hotspot 2.0 specifications.
1555
1556 mcast_router MULTICAST_ROUTER - configure this port for
1557 having multicast routers attached. A port with a multi‐
1558 cast router will receive all multicast traffic. MULTI‐
1559 CAST_ROUTER may be either 0 to disable multicast routers
1560 on this port, 1 to let the system detect the presence of
1561 of routers (this is the default), 2 to permanently en‐
1562 able multicast traffic forwarding on this port or 3 to
1563 enable multicast routers temporarily on this port, not
1564 depending on incoming queries.
1565
1566 mcast_fast_leave { on | off } - this is a synonym to the
1567 fastleave option above.
1568
1569 mcast_flood { on | off } - controls whether a given port
1570 will flood multicast traffic for which
1571 there is no MDB entry.
1572
1573 mcast_to_unicast { on | off } - controls whether a given
1574 port will replicate packets using unicast
1575 instead of multicast. By default this flag is off.
1576
1577 group_fwd_mask MASK - set the group forward mask. This
1578 is the bitmask that is applied to decide whether to for‐
1579 ward incoming frames destined to link-local addresses,
1580 ie addresses of the form 01:80:C2:00:00:0X (defaults to
1581 0, ie the bridge does not forward any link-local frames
1582 coming on this port).
1583
1584 neigh_suppress { on | off } - controls whether neigh
1585 discovery (arp and nd) proxy and suppression is enabled
1586 on the port. By default this flag is off.
1587
1588 vlan_tunnel { on | off } - controls whether vlan to tun‐
1589 nel mapping is enabled on the port. By default this flag
1590 is off.
1591
1592 backup_port DEVICE - if the port loses carrier all traf‐
1593 fic will be redirected to the configured backup port
1594
1595 nobackup_port - removes the currently configured backup
1596 port
1597
1598
1599
1600 Bonding Slave Support
1601 For a link with master bond the following additional arguments
1602 are supported:
1603
1604 ip link set type bond_slave [ queue_id ID ]
1605
1606
1607 queue_id ID - set the slave's queue ID (a 16bit unsigned
1608 value).
1609
1610
1611
1612 MACVLAN and MACVTAP Support
1613 Modify list of allowed macaddr for link in source mode.
1614
1615 ip link set type { macvlan | macvap } [ macaddr COMMAND MACADDR
1616 ... ]
1617
1618 Commands:
1619 add - add MACADDR to allowed list
1620
1621 set - replace allowed list
1622
1623 del - remove MACADDR from allowed list
1624
1625 flush - flush whole allowed list
1626
1627
1628
1629
1630 ip link show - display device attributes
1631 dev NAME (default)
1632 NAME specifies the network device to show.
1633
1634
1635 group GROUP
1636 GROUP specifies what group of devices to show.
1637
1638
1639 up only display running interfaces.
1640
1641
1642 master DEVICE
1643 DEVICE specifies the master device which enslaves devices to
1644 show.
1645
1646
1647 vrf NAME
1648 NAME speficies the VRF which enslaves devices to show.
1649
1650
1651 type TYPE
1652 TYPE specifies the type of devices to show.
1653
1654 Note that the type name is not checked against the list of sup‐
1655 ported types - instead it is sent as-is to the kernel. Later it
1656 is used to filter the returned interface list by comparing it
1657 with the relevant attribute in case the kernel didn't filter al‐
1658 ready. Therefore any string is accepted, but may lead to empty
1659 output.
1660
1661
1662 ip link xstats - display extended statistics
1663 type TYPE
1664 TYPE specifies the type of devices to display extended statis‐
1665 tics for.
1666
1667
1668 ip link afstats - display address-family specific statistics
1669 dev DEVICE
1670 DEVICE specifies the device to display address-family statistics
1671 for.
1672
1673
1674 ip link help - display help
1675 TYPE specifies which help of link type to display.
1676
1677
1678 GROUP
1679 may be a number or a string from the file /etc/iproute2/group which can
1680 be manually filled.
1681
1682
1684 ip link show
1685 Shows the state of all network interfaces on the system.
1686
1687 ip link show type bridge
1688 Shows the bridge devices.
1689
1690 ip link show type vlan
1691 Shows the vlan devices.
1692
1693 ip link show master br0
1694 Shows devices enslaved by br0
1695
1696 ip link set dev ppp0 mtu 1400
1697 Change the MTU the ppp0 device.
1698
1699 ip link add link eth0 name eth0.10 type vlan id 10
1700 Creates a new vlan device eth0.10 on device eth0.
1701
1702 ip link delete dev eth0.10
1703 Removes vlan device.
1704
1705 ip link help gre
1706 Display help for the gre link type.
1707
1708 ip link add name tun1 type ipip remote 192.168.1.1 local 192.168.1.2
1709 ttl 225 encap gue encap-sport auto encap-dport 5555 encap-csum encap-
1710 remcsum
1711 Creates an IPIP that is encapsulated with Generic UDP Encapsula‐
1712 tion, and the outer UDP checksum and remote checksum offload are
1713 enabled.
1714
1715 ip link set dev eth0 xdp obj prog.o
1716 Attaches a XDP/BPF program to device eth0, where the program is lo‐
1717 cated in prog.o, section "prog" (default section). In case a
1718 XDP/BPF program is already attached, throw an error.
1719
1720 ip -force link set dev eth0 xdp obj prog.o sec foo
1721 Attaches a XDP/BPF program to device eth0, where the program is lo‐
1722 cated in prog.o, section "foo". In case a XDP/BPF program is al‐
1723 ready attached, it will be overridden by the new one.
1724
1725 ip -force link set dev eth0 xdp pinned /sys/fs/bpf/foo
1726 Attaches a XDP/BPF program to device eth0, where the program was
1727 previously pinned as an object node into BPF file system under name
1728 foo.
1729
1730 ip link set dev eth0 xdp off
1731 If a XDP/BPF program is attached on device eth0, detach it and ef‐
1732 fectively turn off XDP for device eth0.
1733
1734 ip link add link wpan0 lowpan0 type lowpan
1735 Creates a 6LoWPAN interface named lowpan0 on the underlying IEEE
1736 802.15.4 device wpan0.
1737
1738 ip link add dev ip6erspan11 type ip6erspan seq key 102 local
1739 fc00:100::2 remote fc00:100::1 erspan_ver 2 erspan_dir ingress
1740 erspan_hwid 17
1741 Creates a IP6ERSPAN version 2 interface named ip6erspan00.
1742
1743
1745 ip(8), ip-netns(8), ethtool(8), iptables(8)
1746
1747
1749 Original Manpage by Michail Litvak <mci@owl.openwall.com>
1750
1751
1752
1753iproute2 13 Dec 2012 IP-LINK(8)