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 dev DEVICE [ altname NAME .. ]
87
88 ip link property del dev DEVICE [ 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 PROTO [
788 srcportmin PORT ] [ [no]multiproto ]
789
790
791 dstport PORT - specifies the destination port for the
792 UDP tunnel.
793
794
795 ethertype PROTO - specifies the ethertype of the L3 pro‐
796 tocol being tunnelled. ethertype can be given as plain
797 Ethernet protocol number or using the protocol name
798 ("ipv4", "ipv6", "mpls_uc", etc.).
799
800
801 srcportmin PORT - selects the lowest value of the UDP
802 tunnel source port range.
803
804
805 [no]multiproto - activates support for protocols similar
806 to the one specified by ethertype. When ethertype is
807 "mpls_uc" (that is, unicast MPLS), this allows the tun‐
808 nel to also handle multicast MPLS. When ethertype is
809 "ipv4", this allows the tunnel to also handle IPv6. This
810 option is disabled by default.
811
812
813 MACVLAN and MACVTAP Type Support
814 For a link of type MACVLAN or MACVTAP the following additional
815 arguments are supported:
816
817 ip link add link DEVICE name NAME type { macvlan | macvtap }
818 mode { private | vepa | bridge | passthru [ nopromisc ] |
819 source [ nodst ] } [ bcqueuelen { LENGTH } ]
820
821
822 type { macvlan | macvtap } - specifies the link type to
823 use. macvlan creates just a virtual interface, while
824 macvtap in addition creates a character device /dev/tapX
825 to be used just like a tuntap device.
826
827 mode private - Do not allow communication between
828 macvlan instances on the same physical interface, even
829 if the external switch supports hairpin mode.
830
831 mode vepa - Virtual Ethernet Port Aggregator mode. Data
832 from one macvlan instance to the other on the same phys‐
833 ical interface is transmitted over the physical inter‐
834 face. Either the attached switch needs to support hair‐
835 pin mode, or there must be a TCP/IP router forwarding
836 the packets in order to allow communication. This is the
837 default mode.
838
839 mode bridge - In bridge mode, all endpoints are directly
840 connected to each other, communication is not redirected
841 through the physical interface's peer.
842
843 mode passthru [ nopromisc ] - This mode gives more power
844 to a single endpoint, usually in macvtap mode. It is not
845 allowed for more than one endpoint on the same physical
846 interface. All traffic will be forwarded to this end‐
847 point, allowing virtio guests to change MAC address or
848 set promiscuous mode in order to bridge the interface or
849 create vlan interfaces on top of it. By default, this
850 mode forces the underlying interface into promiscuous
851 mode. Passing the nopromisc flag prevents this, so the
852 promisc flag may be controlled using standard tools.
853
854 mode source [ nodst ] - allows one to set a list of al‐
855 lowed mac address, which is used to match against source
856 mac address from received frames on underlying inter‐
857 face. This allows creating mac based VLAN associations,
858 instead of standard port or tag based. The feature is
859 useful to deploy 802.1x mac based behavior, where driv‐
860 ers of underlying interfaces doesn't allows that. By de‐
861 fault, packets are also considered (duplicated) for des‐
862 tination-based MACVLAN. Passing the nodst flag stops
863 matching packets from also going through the destina‐
864 tion-based flow.
865
866 bcqueuelen { LENGTH } - Set the length of the RX queue
867 used to process broadcast and multicast packets. LENGTH
868 must be a positive integer in the range [0-4294967295].
869 Setting a length of 0 will effectively drop all broad‐
870 cast/multicast traffic. If not specified the macvlan
871 driver default (1000) is used. Note that all macvlans
872 that share the same underlying device are using the same
873 queue. The parameter here is a request, the actual queue
874 length used will be the maximum length that any macvlan
875 interface has requested. When listing device parameters
876 both the bcqueuelen parameter as well as the actual used
877 bcqueuelen are listed to better help the user understand
878 the setting.
879
880
881 High-availability Seamless Redundancy (HSR) Support
882 For a link of type HSR the following additional arguments are
883 supported:
884
885 ip link add link DEVICE name NAME type hsr slave1 SLAVE1-IF
886 slave2 SLAVE2-IF [ supervision ADDR-BYTE ] [ version { 0 | 1 } [
887 proto { 0 | 1 } ]
888
889
890 type hsr - specifies the link type to use, here HSR.
891
892 slave1 SLAVE1-IF - Specifies the physical device used
893 for the first of the two ring ports.
894
895 slave2 SLAVE2-IF - Specifies the physical device used
896 for the second of the two ring ports.
897
898 supervision ADDR-BYTE - The last byte of the multicast
899 address used for HSR supervision frames. Default option
900 is "0", possible values 0-255.
901
902 version { 0 | 1 } - Selects the protocol version of the
903 interface. Default option is "0", which corresponds to
904 the 2010 version of the HSR standard. Option "1" acti‐
905 vates the 2012 version.
906
907 proto { 0 | 1 } - Selects the protocol at the interface.
908 Default option is "0", which corresponds to the HSR
909 standard. Option "1" activates the Parallel Redundancy
910 Protocol (PRP).
911
912
913 BRIDGE Type Support
914 For a link of type BRIDGE the following additional arguments are
915 supported:
916
917 ip link add DEVICE type bridge [ ageing_time AGEING_TIME ] [
918 group_fwd_mask MASK ] [ group_address ADDRESS ] [ forward_delay
919 FORWARD_DELAY ] [ hello_time HELLO_TIME ] [ max_age MAX_AGE ] [
920 stp_state STP_STATE ] [ priority PRIORITY ] [ vlan_filtering
921 VLAN_FILTERING ] [ vlan_protocol VLAN_PROTOCOL ] [ vlan_de‐
922 fault_pvid VLAN_DEFAULT_PVID ] [ vlan_stats_enabled
923 VLAN_STATS_ENABLED ] [ vlan_stats_per_port VLAN_STATS_PER_PORT ]
924 [ mcast_snooping MULTICAST_SNOOPING ] [ mcast_router MULTI‐
925 CAST_ROUTER ] [ mcast_query_use_ifaddr MCAST_QUERY_USE_IFADDR ]
926 [ mcast_querier MULTICAST_QUERIER ] [ mcast_hash_elasticity
927 HASH_ELASTICITY ] [ mcast_hash_max HASH_MAX ] [ mcast_last_mem‐
928 ber_count LAST_MEMBER_COUNT ] [ mcast_startup_query_count
929 STARTUP_QUERY_COUNT ] [ mcast_last_member_interval LAST_MEM‐
930 BER_INTERVAL ] [ mcast_membership_interval MEMBERSHIP_INTERVAL ]
931 [ mcast_querier_interval QUERIER_INTERVAL ] [ mcast_query_inter‐
932 val QUERY_INTERVAL ] [ mcast_query_response_interval QUERY_RE‐
933 SPONSE_INTERVAL ] [ mcast_startup_query_interval
934 STARTUP_QUERY_INTERVAL ] [ mcast_stats_enabled MCAST_STATS_EN‐
935 ABLED ] [ mcast_igmp_version IGMP_VERSION ] [ mcast_mld_version
936 MLD_VERSION ] [ nf_call_iptables NF_CALL_IPTABLES ] [
937 nf_call_ip6tables NF_CALL_IP6TABLES ] [ nf_call_arptables
938 NF_CALL_ARPTABLES ]
939
940
941 ageing_time AGEING_TIME - configure the bridge's FDB en‐
942 tries ageing time, ie the number of seconds a MAC ad‐
943 dress will be kept in the FDB after a packet has been
944 received from that address. after this time has passed,
945 entries are cleaned up.
946
947 group_fwd_mask MASK - set the group forward mask. This
948 is the bitmask that is applied to decide whether to for‐
949 ward incoming frames destined to link-local addresses,
950 ie addresses of the form 01:80:C2:00:00:0X (defaults to
951 0, ie the bridge does not forward any link-local
952 frames).
953
954 group_address ADDRESS - set the MAC address of the mul‐
955 ticast group this bridge uses for STP. The address must
956 be a link-local address in standard Ethernet MAC address
957 format, ie an address of the form 01:80:C2:00:00:0X,
958 with X
959 in [0, 4..f].
960
961 forward_delay FORWARD_DELAY - set the forwarding delay
962 in seconds, ie the time spent in LISTENING state (before
963 moving to LEARNING) and in LEARNING state (before moving
964 to FORWARDING). Only relevant if STP is enabled. Valid
965 values are between 2 and 30.
966
967 hello_time HELLO_TIME - set the time in seconds between
968 hello packets sent by the bridge, when it is a root
969 bridge or a designated bridges. Only relevant if STP is
970 enabled. Valid values are between 1 and 10.
971
972 max_age MAX_AGE - set the hello packet timeout, ie the
973 time in seconds until another bridge in the spanning
974 tree is assumed to be dead, after reception of its last
975 hello message. Only relevant if STP is enabled. Valid
976 values are between 6 and 40.
977
978 stp_state STP_STATE - turn spanning tree protocol on
979 (STP_STATE > 0) or off (STP_STATE == 0). for this
980 bridge.
981
982 priority PRIORITY - set this bridge's spanning tree pri‐
983 ority, used during STP root bridge election. PRIORITY
984 is a 16bit unsigned integer.
985
986 vlan_filtering VLAN_FILTERING - turn VLAN filtering on
987 (VLAN_FILTERING > 0) or off (VLAN_FILTERING == 0). When
988 disabled, the bridge will not consider the VLAN tag when
989 handling packets.
990
991 vlan_protocol { 802.1Q | 802.1ad } - set the protocol
992 used for VLAN filtering.
993
994 vlan_default_pvid VLAN_DEFAULT_PVID - set the default
995 PVID (native/untagged VLAN ID) for this bridge.
996
997 vlan_stats_enabled VLAN_STATS_ENABLED - enable
998 (VLAN_STATS_ENABLED == 1) or disable (VLAN_STATS_ENABLED
999 == 0) per-VLAN stats accounting.
1000
1001 vlan_stats_per_port VLAN_STATS_PER_PORT - enable
1002 (VLAN_STATS_PER_PORT == 1) or disable
1003 (VLAN_STATS_PER_PORT == 0) per-VLAN per-port stats ac‐
1004 counting. Can be changed only when there are no port
1005 VLANs configured.
1006
1007 mcast_snooping MULTICAST_SNOOPING - turn multicast
1008 snooping on (MULTICAST_SNOOPING > 0) or off (MULTI‐
1009 CAST_SNOOPING == 0).
1010
1011 mcast_router MULTICAST_ROUTER - set bridge's multicast
1012 router if IGMP snooping is enabled. MULTICAST_ROUTER is
1013 an integer value having the following meaning:
1014
1015 0 - disabled.
1016
1017 1 - automatic (queried).
1018
1019 2 - permanently enabled.
1020
1021 mcast_query_use_ifaddr MCAST_QUERY_USE_IFADDR - whether
1022 to use the bridge's own IP address as source address for
1023 IGMP queries (MCAST_QUERY_USE_IFADDR > 0) or the default
1024 of 0.0.0.0 (MCAST_QUERY_USE_IFADDR == 0).
1025
1026 mcast_querier MULTICAST_QUERIER - enable (MULTI‐
1027 CAST_QUERIER > 0) or disable (MULTICAST_QUERIER == 0)
1028 IGMP querier, ie sending of multicast queries by the
1029 bridge (default: disabled).
1030
1031 mcast_querier_interval QUERIER_INTERVAL - interval be‐
1032 tween queries sent by other routers. if no queries are
1033 seen after this delay has passed, the bridge will start
1034 to send its own queries (as if mcast_querier was en‐
1035 abled).
1036
1037 mcast_hash_elasticity HASH_ELASTICITY - set multicast
1038 database hash elasticity, ie the maximum chain length in
1039 the multicast hash table (defaults to 4).
1040
1041 mcast_hash_max HASH_MAX - set maximum size of multicast
1042 hash table (defaults to 512, value must be a power of
1043 2).
1044
1045 mcast_last_member_count LAST_MEMBER_COUNT - set multi‐
1046 cast last member count, ie the number of queries the
1047 bridge will send before stopping forwarding a multicast
1048 group after a "leave" message has been received (de‐
1049 faults to 2).
1050
1051 mcast_last_member_interval LAST_MEMBER_INTERVAL - inter‐
1052 val between queries to find remaining members of a
1053 group, after a "leave" message is received.
1054
1055 mcast_startup_query_count STARTUP_QUERY_COUNT - set the
1056 number of IGMP queries to send during startup phase (de‐
1057 faults to 2).
1058
1059 mcast_startup_query_interval STARTUP_QUERY_INTERVAL -
1060 interval between queries in the startup phase.
1061
1062 mcast_query_interval QUERY_INTERVAL - interval between
1063 queries sent by the bridge after the end of the startup
1064 phase.
1065
1066 mcast_query_response_interval QUERY_RESPONSE_INTERVAL -
1067 set the Max Response Time/Maximum Response Delay for
1068 IGMP/MLD queries sent by the bridge.
1069
1070 mcast_membership_interval MEMBERSHIP_INTERVAL - delay
1071 after which the bridge will leave a group, if no member‐
1072 ship reports for this group are received.
1073
1074 mcast_stats_enabled MCAST_STATS_ENABLED - enable
1075 (MCAST_STATS_ENABLED > 0) or disable (MCAST_STATS_EN‐
1076 ABLED == 0) multicast (IGMP/MLD) stats accounting.
1077
1078 mcast_igmp_version IGMP_VERSION - set the IGMP version.
1079
1080 mcast_mld_version MLD_VERSION - set the MLD version.
1081
1082 nf_call_iptables NF_CALL_IPTABLES - enable (NF_CALL_IPT‐
1083 ABLES > 0) or disable (NF_CALL_IPTABLES == 0) iptables
1084 hooks on the bridge.
1085
1086 nf_call_ip6tables NF_CALL_IP6TABLES - enable
1087 (NF_CALL_IP6TABLES > 0) or disable (NF_CALL_IP6TABLES ==
1088 0) ip6tables hooks on the bridge.
1089
1090 nf_call_arptables NF_CALL_ARPTABLES - enable
1091 (NF_CALL_ARPTABLES > 0) or disable (NF_CALL_ARPTABLES ==
1092 0) arptables hooks on the bridge.
1093
1094
1095
1096
1097 MACsec Type Support
1098 For a link of type MACsec the following additional arguments are
1099 supported:
1100
1101 ip link add link DEVICE name NAME type macsec [ [ address
1102 <lladdr> ] port PORT | sci SCI ] [ cipher CIPHER_SUITE ] [
1103 icvlen { 8..16 } ] [ encrypt { on | off } ] [ send_sci { on |
1104 off } ] [ end_station { on | off } ] [ scb { on | off } ] [ pro‐
1105 tect { on | off } ] [ replay { on | off } window { 0..2^32-1 } ]
1106 [ validate { strict | check | disabled } ] [ encodingsa { 0..3 }
1107 ]
1108
1109
1110 address <lladdr> - sets the system identifier component
1111 of secure channel for this MACsec device.
1112
1113
1114 port PORT - sets the port number component of secure
1115 channel for this MACsec device, in a range from 1 to
1116 65535 inclusive. Numbers with a leading " 0 " or " 0x "
1117 are interpreted as octal and hexadecimal, respectively.
1118
1119
1120 sci SCI - sets the secure channel identifier for this
1121 MACsec device. SCI is a 64bit wide number in hexadeci‐
1122 mal format.
1123
1124
1125 cipher CIPHER_SUITE - defines the cipher suite to use.
1126
1127
1128 icvlen LENGTH - sets the length of the Integrity Check
1129 Value (ICV).
1130
1131
1132 encrypt on or encrypt off - switches between authenti‐
1133 cated encryption, or authenticity mode only.
1134
1135
1136 send_sci on or send_sci off - specifies whether the SCI
1137 is included in every packet, or only when it is neces‐
1138 sary.
1139
1140
1141 end_station on or end_station off - sets the End Station
1142 bit.
1143
1144
1145 scb on or scb off - sets the Single Copy Broadcast bit.
1146
1147
1148 protect on or protect off - enables MACsec protection on
1149 the device.
1150
1151
1152 replay on or replay off - enables replay protection on
1153 the device.
1154
1155
1156
1157 window SIZE - sets the size of the replay win‐
1158 dow.
1159
1160
1161
1162 validate strict or validate check or validate disabled -
1163 sets the validation mode on the device.
1164
1165
1166 encodingsa AN - sets the active secure association for
1167 transmission.
1168
1169
1170
1171 VRF Type Support
1172 For a link of type VRF the following additional arguments are
1173 supported:
1174
1175 ip link add DEVICE type vrf table TABLE
1176
1177
1178 table table id associated with VRF device
1179
1180
1181
1182 RMNET Type Support
1183 For a link of type RMNET the following additional arguments are
1184 supported:
1185
1186 ip link add link DEVICE name NAME type rmnet mux_id MUXID
1187
1188
1189 mux_id MUXID - specifies the mux identifier for the rm‐
1190 net device, possible values 1-254.
1191
1192
1193
1194 XFRM Type Support
1195 For a link of type XFRM the following additional arguments are
1196 supported:
1197
1198 ip link add DEVICE type xfrm dev PHYS_DEV [ if_id IF_ID ]
1199
1200
1201 dev PHYS_DEV - specifies the underlying physical inter‐
1202 face from which transform traffic is sent and received.
1203
1204
1205 if_id IF-ID - specifies the hexadecimal lookup key used
1206 to send traffic to and from specific xfrm policies.
1207 Policies must be configured with the same key. If not
1208 set, the key defaults to 0 and will match any policies
1209 which similarly do not have a lookup key configuration.
1210
1211
1212
1213 ip link delete - delete virtual link
1214 dev DEVICE
1215 specifies the virtual device to act operate on.
1216
1217
1218 group GROUP
1219 specifies the group of virtual links to delete. Group 0 is not
1220 allowed to be deleted since it is the default group.
1221
1222
1223 type TYPE
1224 specifies the type of the device.
1225
1226
1227 ip link set - change device attributes
1228 Warning: If multiple parameter changes are requested, ip aborts immedi‐
1229 ately after any of the changes have failed. This is the only case when
1230 ip can move the system to an unpredictable state. The solution is to
1231 avoid changing several parameters with one ip link set call. The modi‐
1232 fier change is equivalent to set.
1233
1234
1235
1236 dev DEVICE
1237 DEVICE specifies network device to operate on. When configuring
1238 SR-IOV Virtual Function (VF) devices, this keyword should spec‐
1239 ify the associated Physical Function (PF) device.
1240
1241
1242 group GROUP
1243 GROUP has a dual role: If both group and dev are present, then
1244 move the device to the specified group. If only a group is spec‐
1245 ified, then the command operates on all devices in that group.
1246
1247
1248 up and down
1249 change the state of the device to UP or DOWN.
1250
1251
1252 arp on or arp off
1253 change the NOARP flag on the device.
1254
1255
1256 multicast on or multicast off
1257 change the MULTICAST flag on the device.
1258
1259
1260 allmulticast on or allmulticast off
1261 change the ALLMULTI flag on the device. When enabled, instructs
1262 network driver to retrieve all multicast packets from the net‐
1263 work to the kernel for further processing.
1264
1265
1266 promisc on or promisc off
1267 change the PROMISC flag on the device. When enabled, activates
1268 promiscuous operation of the network device.
1269
1270
1271 trailers on or trailers off
1272 change the NOTRAILERS flag on the device, NOT used by the Linux
1273 and exists for BSD compatibility.
1274
1275
1276 protodown on or protodown off
1277 change the PROTODOWN state on the device. Indicates that a pro‐
1278 tocol error has been detected on the port. Switch drivers can
1279 react to this error by doing a phys down on the switch port.
1280
1281
1282 protodown_reason PREASON on or off
1283 set PROTODOWN reasons on the device. protodown reason bit names
1284 can be enumerated under /etc/iproute2/protodown_reasons.d/. pos‐
1285 sible reasons bits 0-31
1286
1287
1288 dynamic on or dynamic off
1289 change the DYNAMIC flag on the device. Indicates that address
1290 can change when interface goes down (currently NOT used by the
1291 Linux).
1292
1293
1294 name NAME
1295 change the name of the device. This operation is not recommended
1296 if the device is running or has some addresses already config‐
1297 ured.
1298
1299
1300 txqueuelen NUMBER
1301
1302 txqlen NUMBER
1303 change the transmit queue length of the device.
1304
1305
1306 mtu NUMBER
1307 change the MTU of the device.
1308
1309
1310 address LLADDRESS
1311 change the station address of the interface.
1312
1313
1314 broadcast LLADDRESS
1315
1316 brd LLADDRESS
1317
1318 peer LLADDRESS
1319 change the link layer broadcast address or the peer address when
1320 the interface is POINTOPOINT.
1321
1322
1323 netns NETNSNAME | PID
1324 move the device to the network namespace associated with name
1325 NETNSNAME or process PID.
1326
1327 Some devices are not allowed to change network namespace: loop‐
1328 back, bridge, wireless. These are network namespace local de‐
1329 vices. In such case ip tool will return "Invalid argument" er‐
1330 ror. It is possible to find out if device is local to a single
1331 network namespace by checking netns-local flag in the output of
1332 the ethtool:
1333
1334 ethtool -k DEVICE
1335
1336 To change network namespace for wireless devices the iw tool can
1337 be used. But it allows to change network namespace only for
1338 physical devices and by process PID.
1339
1340
1341 alias NAME
1342 give the device a symbolic name for easy reference.
1343
1344
1345 group GROUP
1346 specify the group the device belongs to. The available groups
1347 are listed in file /etc/iproute2/group.
1348
1349
1350 vf NUM specify a Virtual Function device to be configured. The associ‐
1351 ated PF device must be specified using the dev parameter.
1352
1353 mac LLADDRESS - change the station address for the spec‐
1354 ified VF. The vf parameter must be specified.
1355
1356
1357 vlan VLANID - change the assigned VLAN for the specified
1358 VF. When specified, all traffic sent from the VF will be
1359 tagged with the specified VLAN ID. Incoming traffic will
1360 be filtered for the specified VLAN ID, and will have all
1361 VLAN tags stripped before being passed to the VF. Set‐
1362 ting this parameter to 0 disables VLAN tagging and fil‐
1363 tering. The vf parameter must be specified.
1364
1365
1366 qos VLAN-QOS - assign VLAN QOS (priority) bits for the
1367 VLAN tag. When specified, all VLAN tags transmitted by
1368 the VF will include the specified priority bits in the
1369 VLAN tag. If not specified, the value is assumed to be
1370 0. Both the vf and vlan parameters must be specified.
1371 Setting both vlan and qos as 0 disables VLAN tagging and
1372 filtering for the VF.
1373
1374
1375 proto VLAN-PROTO - assign VLAN PROTOCOL for the VLAN
1376 tag, either 802.1Q or 802.1ad. Setting to 802.1ad, all
1377 traffic sent from the VF will be tagged with VLAN S-Tag.
1378 Incoming traffic will have VLAN S-Tags stripped before
1379 being passed to the VF. Setting to 802.1ad also enables
1380 an option to concatenate another VLAN tag, so both S-TAG
1381 and C-TAG will be inserted/stripped for outgoing/incom‐
1382 ing traffic, respectively. If not specified, the value
1383 is assumed to be 802.1Q. Both the vf and vlan parameters
1384 must be specified.
1385
1386
1387 rate TXRATE -- change the allowed transmit bandwidth, in
1388 Mbps, for the specified VF. Setting this parameter to 0
1389 disables rate limiting. vf parameter must be specified.
1390 Please use new API max_tx_rate option instead.
1391
1392
1393 max_tx_rate TXRATE - change the allowed maximum transmit
1394 bandwidth, in Mbps, for the specified VF. Setting this
1395 parameter to 0 disables rate limiting. vf parameter
1396 must be specified.
1397
1398
1399 min_tx_rate TXRATE - change the allowed minimum transmit
1400 bandwidth, in Mbps, for the specified VF. Minimum
1401 TXRATE should be always <= Maximum TXRATE. Setting this
1402 parameter to 0 disables rate limiting. vf parameter
1403 must be specified.
1404
1405
1406 spoofchk on|off - turn packet spoof checking on or off
1407 for the specified VF.
1408
1409 query_rss on|off - toggle the ability of querying the
1410 RSS configuration of a specific
1411 VF. VF RSS information like RSS hash key may be con‐
1412 sidered sensitive
1413 on some devices where this information is shared be‐
1414 tween VF and PF
1415 and thus its querying may be prohibited by default.
1416
1417 state auto|enable|disable - set the virtual link state
1418 as seen by the specified VF. Setting to auto means a re‐
1419 flection of the PF link state, enable lets the VF to
1420 communicate with other VFs on this host even if the PF
1421 link state is down, disable causes the HW to drop any
1422 packets sent by the VF.
1423
1424 trust on|off - trust the specified VF user. This enables
1425 that VF user can set a specific feature which may impact
1426 security and/or performance. (e.g. VF multicast promis‐
1427 cuous mode)
1428
1429 node_guid eui64 - configure node GUID for Infiniband
1430 VFs.
1431
1432 port_guid eui64 - configure port GUID for Infiniband
1433 VFs.
1434
1435
1436 xdp object | pinned | off
1437 set (or unset) a XDP ("eXpress Data Path") BPF program to run on
1438 every packet at driver level. ip link output will indicate a
1439 xdp flag for the networking device. If the driver does not have
1440 native XDP support, the kernel will fall back to a slower,
1441 driver-independent "generic" XDP variant. The ip link output
1442 will in that case indicate xdpgeneric instead of xdp only. If
1443 the driver does have native XDP support, but the program is
1444 loaded under xdpgeneric object | pinned then the kernel will use
1445 the generic XDP variant instead of the native one. xdpdrv has
1446 the opposite effect of requestsing that the automatic fallback
1447 to the generic XDP variant be disabled and in case driver is not
1448 XDP-capable error should be returned. xdpdrv also disables
1449 hardware offloads. xdpoffload in ip link output indicates that
1450 the program has been offloaded to hardware and can also be used
1451 to request the "offload" mode, much like xdpgeneric it forces
1452 program to be installed specifically in HW/FW of the apater.
1453
1454 off (or none ) - Detaches any currently attached XDP/BPF program
1455 from the given device.
1456
1457 object FILE - Attaches a XDP/BPF program to the given device.
1458 The FILE points to a BPF ELF file (f.e. generated by LLVM) that
1459 contains the BPF program code, map specifications, etc. If a
1460 XDP/BPF program is already attached to the given device, an er‐
1461 ror will be thrown. If no XDP/BPF program is currently attached,
1462 the device supports XDP and the program from the BPF ELF file
1463 passes the kernel verifier, then it will be attached to the de‐
1464 vice. If the option -force is passed to ip then any prior at‐
1465 tached XDP/BPF program will be atomically overridden and no er‐
1466 ror will be thrown in this case. If no section option is passed,
1467 then the default section name ("prog") will be assumed, other‐
1468 wise the provided section name will be used. If no verbose op‐
1469 tion is passed, then a verifier log will only be dumped on load
1470 error. See also EXAMPLES section for usage examples.
1471
1472 section NAME - Specifies a section name that contains the BPF
1473 program code. If no section name is specified, the default one
1474 ("prog") will be used. This option is to be passed with the ob‐
1475 ject option.
1476
1477 verbose - Act in verbose mode. For example, even in case of suc‐
1478 cess, this will print the verifier log in case a program was
1479 loaded from a BPF ELF file.
1480
1481 pinned FILE - Attaches a XDP/BPF program to the given device.
1482 The FILE points to an already pinned BPF program in the BPF file
1483 system. The option section doesn't apply here, but otherwise se‐
1484 mantics are the same as with the option object described al‐
1485 ready.
1486
1487
1488 master DEVICE
1489 set master device of the device (enslave device).
1490
1491
1492 nomaster
1493 unset master device of the device (release device).
1494
1495
1496 addrgenmode eui64|none|stable_secret|random
1497 set the IPv6 address generation mode
1498
1499 eui64 - use a Modified EUI-64 format interface identifier
1500
1501 none - disable automatic address generation
1502
1503 stable_secret - generate the interface identifier based on a
1504 preset
1505 /proc/sys/net/ipv6/conf/{default,DEVICE}/stable_secret
1506
1507 random - like stable_secret, but auto-generate a new random se‐
1508 cret if none is set
1509
1510
1511 link-netnsid
1512 set peer netnsid for a cross-netns interface
1513
1514
1515 type ETYPE TYPE_ARGS
1516 Change type-specific settings. For a list of supported types and
1517 arguments refer to the description of ip link add above. In ad‐
1518 dition to that, it is possible to manipulate settings to slave
1519 devices:
1520
1521
1522 Bridge Slave Support
1523 For a link with master bridge the following additional arguments
1524 are supported:
1525
1526 ip link set type bridge_slave [ fdb_flush ] [ state STATE ] [
1527 priority PRIO ] [ cost COST ] [ guard { on | off } ] [ hairpin {
1528 on | off } ] [ fastleave { on | off } ] [ root_block { on | off
1529 } ] [ learning { on | off } ] [ flood { on | off } ] [ proxy_arp
1530 { on | off } ] [ proxy_arp_wifi { on | off } ] [ mcast_router
1531 MULTICAST_ROUTER ] [ mcast_fast_leave { on | off} ] [
1532 mcast_flood { on | off } ] [ mcast_to_unicast { on | off } ] [
1533 group_fwd_mask MASK ] [ neigh_suppress { on | off } ] [
1534 vlan_tunnel { on | off } ] [ isolated { on | off } ] [
1535 backup_port DEVICE ] [ nobackup_port ]
1536
1537
1538 fdb_flush - flush bridge slave's fdb dynamic entries.
1539
1540 state STATE - Set port state. STATE is a number repre‐
1541 senting the following states: 0 (disabled), 1 (listen‐
1542 ing), 2 (learning), 3 (forwarding), 4 (blocking).
1543
1544 priority PRIO - set port priority (allowed values are
1545 between 0 and 63, inclusively).
1546
1547 cost COST - set port cost (allowed values are between 1
1548 and 65535, inclusively).
1549
1550 guard { on | off } - block incoming BPDU packets on this
1551 port.
1552
1553 hairpin { on | off } - enable hairpin mode on this port.
1554 This will allow incoming packets on this port to be re‐
1555 flected back.
1556
1557 fastleave { on | off } - enable multicast fast leave on
1558 this port.
1559
1560 root_block { on | off } - block this port from becoming
1561 the bridge's root port.
1562
1563 learning { on | off } - allow MAC address learning on
1564 this port.
1565
1566 flood { on | off } - open the flood gates on this port,
1567 i.e. forward all unicast frames to this port also. Re‐
1568 quires proxy_arp and proxy_arp_wifi to be turned off.
1569
1570 proxy_arp { on | off } - enable proxy ARP on this port.
1571
1572 proxy_arp_wifi { on | off } - enable proxy ARP on this
1573 port which meets extended requirements by IEEE 802.11
1574 and Hotspot 2.0 specifications.
1575
1576 mcast_router MULTICAST_ROUTER - configure this port for
1577 having multicast routers attached. A port with a multi‐
1578 cast router will receive all multicast traffic. MULTI‐
1579 CAST_ROUTER may be either 0 to disable multicast routers
1580 on this port, 1 to let the system detect the presence of
1581 routers (this is the default), 2 to permanently enable
1582 multicast traffic forwarding on this port or 3 to enable
1583 multicast routers temporarily on this port, not depend‐
1584 ing on incoming queries.
1585
1586 mcast_fast_leave { on | off } - this is a synonym to the
1587 fastleave option above.
1588
1589 mcast_flood { on | off } - controls whether a given port
1590 will flood multicast traffic for which
1591 there is no MDB entry.
1592
1593 mcast_to_unicast { on | off } - controls whether a given
1594 port will replicate packets using unicast
1595 instead of multicast. By default this flag is off.
1596
1597 group_fwd_mask MASK - set the group forward mask. This
1598 is the bitmask that is applied to decide whether to for‐
1599 ward incoming frames destined to link-local addresses,
1600 ie addresses of the form 01:80:C2:00:00:0X (defaults to
1601 0, ie the bridge does not forward any link-local frames
1602 coming on this port).
1603
1604 neigh_suppress { on | off } - controls whether neigh
1605 discovery (arp and nd) proxy and suppression is enabled
1606 on the port. By default this flag is off.
1607
1608 vlan_tunnel { on | off } - controls whether vlan to tun‐
1609 nel mapping is enabled on the port. By default this flag
1610 is off.
1611
1612 backup_port DEVICE - if the port loses carrier all traf‐
1613 fic will be redirected to the configured backup port
1614
1615 nobackup_port - removes the currently configured backup
1616 port
1617
1618
1619
1620 Bonding Slave Support
1621 For a link with master bond the following additional arguments
1622 are supported:
1623
1624 ip link set type bond_slave [ queue_id ID ]
1625
1626
1627 queue_id ID - set the slave's queue ID (a 16bit unsigned
1628 value).
1629
1630
1631
1632 MACVLAN and MACVTAP Support
1633 Modify list of allowed macaddr for link in source mode.
1634
1635 ip link set type { macvlan | macvap } [ macaddr COMMAND MACADDR
1636 ... ]
1637
1638 Commands:
1639 add - add MACADDR to allowed list
1640
1641 set - replace allowed list
1642
1643 del - remove MACADDR from allowed list
1644
1645 flush - flush whole allowed list
1646
1647
1648 Update the broadcast/multicast queue length.
1649
1650 ip link set type { macvlan | macvap } [ bcqueuelen LENGTH ]
1651
1652 bcqueuelen LENGTH - Set the length of the RX queue used
1653 to process broadcast and multicast packets. LENGTH must
1654 be a positive integer in the range [0-4294967295]. Set‐
1655 ting a length of 0 will effectively drop all broad‐
1656 cast/multicast traffic. If not specified the macvlan
1657 driver default (1000) is used. Note that all macvlans
1658 that share the same underlying device are using the same
1659 queue. The parameter here is a request, the actual queue
1660 length used will be the maximum length that any macvlan
1661 interface has requested. When listing device parameters
1662 both the bcqueuelen parameter as well as the actual used
1663 bcqueuelen are listed to better help the user understand
1664 the setting.
1665
1666
1667 ip link show - display device attributes
1668 dev NAME (default)
1669 NAME specifies the network device to show.
1670
1671
1672 group GROUP
1673 GROUP specifies what group of devices to show.
1674
1675
1676 up only display running interfaces.
1677
1678
1679 master DEVICE
1680 DEVICE specifies the master device which enslaves devices to
1681 show.
1682
1683
1684 vrf NAME
1685 NAME specifies the VRF which enslaves devices to show.
1686
1687
1688 type TYPE
1689 TYPE specifies the type of devices to show.
1690
1691 Note that the type name is not checked against the list of sup‐
1692 ported types - instead it is sent as-is to the kernel. Later it
1693 is used to filter the returned interface list by comparing it
1694 with the relevant attribute in case the kernel didn't filter al‐
1695 ready. Therefore any string is accepted, but may lead to empty
1696 output.
1697
1698
1699 ip link xstats - display extended statistics
1700 type TYPE
1701 TYPE specifies the type of devices to display extended statis‐
1702 tics for.
1703
1704
1705 ip link afstats - display address-family specific statistics
1706 dev DEVICE
1707 DEVICE specifies the device to display address-family statistics
1708 for.
1709
1710
1711 ip link help - display help
1712 TYPE specifies which help of link type to display.
1713
1714
1715 GROUP
1716 may be a number or a string from the file /etc/iproute2/group which can
1717 be manually filled.
1718
1719
1721 ip link show
1722 Shows the state of all network interfaces on the system.
1723
1724 ip link show type bridge
1725 Shows the bridge devices.
1726
1727 ip link show type vlan
1728 Shows the vlan devices.
1729
1730 ip link show master br0
1731 Shows devices enslaved by br0
1732
1733 ip link set dev ppp0 mtu 1400
1734 Change the MTU the ppp0 device.
1735
1736 ip link add link eth0 name eth0.10 type vlan id 10
1737 Creates a new vlan device eth0.10 on device eth0.
1738
1739 ip link delete dev eth0.10
1740 Removes vlan device.
1741
1742 ip link help gre
1743 Display help for the gre link type.
1744
1745 ip link add name tun1 type ipip remote 192.168.1.1 local 192.168.1.2
1746 ttl 225 encap gue encap-sport auto encap-dport 5555 encap-csum encap-
1747 remcsum
1748 Creates an IPIP that is encapsulated with Generic UDP Encapsula‐
1749 tion, and the outer UDP checksum and remote checksum offload are
1750 enabled.
1751
1752 ip link set dev eth0 xdp obj prog.o
1753 Attaches a XDP/BPF program to device eth0, where the program is lo‐
1754 cated in prog.o, section "prog" (default section). In case a
1755 XDP/BPF program is already attached, throw an error.
1756
1757 ip -force link set dev eth0 xdp obj prog.o sec foo
1758 Attaches a XDP/BPF program to device eth0, where the program is lo‐
1759 cated in prog.o, section "foo". In case a XDP/BPF program is al‐
1760 ready attached, it will be overridden by the new one.
1761
1762 ip -force link set dev eth0 xdp pinned /sys/fs/bpf/foo
1763 Attaches a XDP/BPF program to device eth0, where the program was
1764 previously pinned as an object node into BPF file system under name
1765 foo.
1766
1767 ip link set dev eth0 xdp off
1768 If a XDP/BPF program is attached on device eth0, detach it and ef‐
1769 fectively turn off XDP for device eth0.
1770
1771 ip link add link wpan0 lowpan0 type lowpan
1772 Creates a 6LoWPAN interface named lowpan0 on the underlying IEEE
1773 802.15.4 device wpan0.
1774
1775 ip link add dev ip6erspan11 type ip6erspan seq key 102 local
1776 fc00:100::2 remote fc00:100::1 erspan_ver 2 erspan_dir ingress
1777 erspan_hwid 17
1778 Creates a IP6ERSPAN version 2 interface named ip6erspan00.
1779
1780
1782 ip(8), ip-netns(8), ethtool(8), iptables(8)
1783
1784
1786 Original Manpage by Michail Litvak <mci@owl.openwall.com>
1787
1788
1789
1790iproute2 13 Dec 2012 IP-LINK(8)