| IP-LINK(8) | Linux | IP-LINK(8) |
نام (NAME)
ip-link - پیکربندی و مدیریت رابطها و دستگاههای شبکه در لینوکس
خلاصه دستور (SYNOPSIS)
ip link { COMMAND | help }
ip link add [ link DEVICE ] [ name ]
NAME
[ txqueuelen PACKETS ]
[ address LLADDR ] [ broadcast LLADDR ]
[ mtu MTU ] [ index IDX ]
[ numtxqueues QUEUE_COUNT ] [ numrxqueues
QUEUE_COUNT ]
[ gso_max_size BYTES ] [ gso_ipv4_max_size BYTES ]
[ gso_max_segs SEGMENTS ]
[ gro_max_size BYTES ] [ gro_ipv4_max_size BYTES ]
[ netns { PID | NETNSNAME | NETNSFILE } ]
type TYPE [ ARGS ]
ip link delete { DEVICE | group GROUP } type TYPE [ ARGS ]
ip link { set | change } {
DEVICE | group GROUP }
[ { up | down } ]
[ type ETYPE TYPE_ARGS ]
[ arp { on | off } ]
[ dynamic { on | off } ]
[ multicast { on | off } ]
[ allmulticast { on | off } ]
[ promisc { on | off } ]
[ protodown { on | off } ]
[ protodown_reason PREASON { on | off } ]
[ trailers { on | off } ]
[ txqueuelen PACKETS ]
[ gso_max_size BYTES ] [ gso_ipv4_max_size BYTES ]
[ gso_max_segs SEGMENTS ]
[ gro_max_size BYTES ] [ gro_ipv4_max_size BYTES ]
[ name NEWNAME ]
[ address LLADDR ]
[ broadcast LLADDR ]
[ mtu MTU ]
[ netns { PID | NETNSNAME | NETNSFILE } ]
[ link-netnsid ID ]
[ alias NAME ]
[ vf NUM [ mac LLADDR ]
[ VFVLAN-LIST ]
[ rate TXRATE ]
[ max_tx_rate TXRATE ]
[ min_tx_rate TXRATE ]
[ spoofchk { on | off } ]
[ query_rss { on | off } ]
[ state { auto | enable | disable } ]
[ trust { on | off } ]
[ node_guid eui64 ]
[ port_guid eui64 ] ]
[ { xdp | xdpgeneric | xdpdrv | xdpoffload } {
off |
object FILE [ { section | program } NAME ]
[ verbose ] |
pinned FILE } ]
[ master DEVICE ]
[ nomaster ]
[ vrf NAME ]
[ addrgenmode { eui64 | none | stable_secret |
random } ]
[ inet [ { forwarding | proxy_arp |
accept_redirects |
secure_redirects | send_redirects | shared_media |
accept_source_route | bootp_relay | log_martians |
arp_filter | disable_xfrm | disable_policy |
promote_secondaries | arp_notify | accept_local |
src_vmark | proxy_arp_pvlan | route_localnet |
bc_forwarding | ignore_routes_with_linkdown |
drop_unicast_in_l2_multicast |
drop_gratuitous_arp | arp_evict_nocarrier } { on |
off } ]
[ rp_filter { 0 | 1 | 2 } ]
[ arp_announce { 0 | 1 | 2 } ]
[ arp_ignore { 0 | 1 | ... | 8 } ]
[ arp_accept { 0 | 1 | 2 } ]
[ force_igmp_version { 0 | 1 | 2 | 3 } ]
[ tag TAG ] [ medium_id ID ]
[ igmpv2_unsolicited_report_interval INTERVAL ]
[ igmpv3_unsolicited_report_interval INTERVAL ] ]
[ macaddr [ MACADDR ]
[ { flush | add | del } MACADDR ]
[ set MACADDR ] ]
ip link show [ DEVICE | group GROUP ] [ { up | down } ] [ master DEVICE ] [ type ETYPE ] [ vrf NAME ] [ nomaster ] [ novf ]
ip link xstats type TYPE [ ARGS ]
ip link afstats [ dev DEVICE ]
ip link help [ TYPE ]
TYPE := [ amt | bareudp | bond | bridge | can | dsa | dummy | erspan | geneve | gre | gretap | gtp | hsr | ifb | ip6erspan | ip6gre | ip6gretap | ip6tnl | ipip | ipoib | ipvlan | ipvtap | lowpan | macsec | macvlan | macvtap | netdevsim | netkit | nlmon | pfcp | rmnet | sit | vcan | veth | virt_wifi | vlan | vrf | vti | vxcan | vxlan | xfrm ]
ETYPE := [ TYPE | bridge_slave | bond_slave ]
VFVLAN-LIST := [ VFVLAN-LIST ] VFVLAN
VFVLAN := [ vlan VLANID [ qos
VLAN-QOS ] [ proto VLAN-PROTO ] ]
ip link property add dev DEVICE [ altname NAME .. ]
ip link property del dev DEVICE [ altname NAME .. ]
توضیحات (DESCRIPTION)
ip link add - افزودن رابط مجازی (add virtual link)
- link DEVICE
- دستگاه
فیزیکی را
که عملیات
روی آن
انجام
میشود
مشخص
میکند.
NAME نام دستگاه مجازی جدید را مشخص میکند.
TYPE نوع دستگاه جدید را مشخص میکند.
انواع پیوند (Link types):
amt - تونلزنی چندپخشی خودکار (Automatic Multicast Tunneling - AMT)bareudp - پشتیبانی از کپسولهسازی لایه ۳ در Bare UDP
bond - دستگاه پیوند چندگانه (Bonding device)
bridge - دستگاه پل اترنت (Ethernet Bridge device)
can - شبکه کنترلکننده (Controller Area Network)
dsa - معماری سوئیچ توزیعشده (Distributed Switch Architecture)
dummy - رابط شبکه صوری (Dummy network interface)
erspan - پروتکل Encapsulated Remote SPAN بر روی GRE و IPv4
geneve - کپسولهسازی عمومی مجازیسازی شبکه (GEneric NEtwork Virtualization Encapsulation)
gre - رابط تونل مجازی GRE بر روی IPv4
gretap - رابط تونل مجازی لایه ۲ (L2) با GRE بر روی IPv4
gtp - پروتکل تونلزنی GPRS (GPRS Tunneling Protocol)
hsr - دستگاه افزونگی یکپارچه با دسترسپذیری بالا (High-availability Seamless Redundancy)
ifb - دستگاه بلوک عملکردی واسط (Intermediate Functional Block)
ip6erspan - پروتکل Encapsulated Remote SPAN بر روی GRE و IPv6
ip6gre - رابط تونل مجازی GRE بر روی IPv6
ip6gretap - رابط تونل مجازی لایه ۲ (L2) با GRE بر روی IPv6
ip6tnl - رابط تونل مجازی IPv4|IPv6 بر روی IPv6
ipip - رابط تونل مجازی IPv4 بر روی IPv4
ipoib - دستگاه IP بر روی Infiniband (IPoIB)
ipvlan - رابط برای VLANهای مبتنی بر لایه ۳ (IPv6/IPv4)
ipvtap - رابط برای VLANهای مبتنی بر لایه ۳ (IPv6/IPv4) و TAP
lowpan - رابط برای 6LoWPAN (IPv6) بر روی IEEE 802.15.4 / بلوتوث
macsec - رابط برای امنیت کنترل دسترسی رسانه با استاندارد IEEE 802.1AE (MACsec)
macvlan - رابط مجازی بر پایه آدرس لایه پیوند (MAC)
macvtap - رابط مجازی بر پایه آدرس لایه پیوند (MAC) و TAP.
netdevsim - رابط برای آزمایشهای رابط برنامهنویسی netdev API
netkit - دستگاه شبکه با قابلیت برنامهریزی BPF
nlmon - دستگاه نظارت و پایش Netlink
pfcp - دستگاه پروتکل کنترل هدایت بسته (Packet Forwarding Control Protocol)
rmnet - دستگاه کوالکام rmnet (Qualcomm rmnet)
sit - رابط تونل مجازی IPv6 بر روی IPv4
vcan - رابط مجازی شبکه کنترلکننده (Virtual Controller Area Network)
veth - رابط اترنت مجازی (Virtual ethernet interface)
virt_wifi - دستگاه شبیهسازی وایفای rtnetlink
vlan - رابط شبکه محلی مجازی برچسبدار 802.1q (802.1q tagged VLAN)
vrf - رابط برای دامنههای لایه ۳ VRF
vti - رابط تونل مجازی (Virtual tunnel interface)
vxcan - رابط تونل مجازی شبکه کنترلکننده (Controller Area Network)
vxlan - شبکه محلی گسترشیافته مجازی (Virtual eXtended LAN)
xfrm - رابط مجازی xfrm
- numtxqueues QUEUE_COUNT
- تعداد صفهای ارسال (transmit queues) را برای دستگاه جدید مشخص میکند.
- numrxqueues QUEUE_COUNT
- تعداد صفهای دریافت (receive queues) را برای دستگاه جدید مشخص میکند.
- gso_max_size BYTES
- حداکثر اندازه توصیهشده برای یک بسته Generic Segment Offload (GSO) را که دستگاه جدید باید بپذیرد مشخص میکند. این گزینه همچنین برای فعالسازی BIG TCP برای IPv6 روی این دستگاه در صورتی که اندازه بزرگتر از ۶۵۵۳۶ باشد استفاده میشود.
- gso_ipv4_max_size BYTES
- حداکثر اندازه توصیهشده برای یک بسته IPv4 Generic Segment Offload را که دستگاه جدید باید بپذیرد مشخص میکند. این گزینه بهویژه برای فعالسازی BIG TCP برای IPv4 روی این دستگاه با تنظیم اندازه بیشتر از ۶۵۵۳۶ استفاده میشود. توجه داشته باشید که برای فعالسازی واقعی BIG TCP برای IPv4، مقدار gso_max_size باید بزرگتر یا مساوی با gso_ipv4_max_size تنظیم شود.
- gso_max_segs SEGMENTS
- حداکثر تعداد توصیهشده قطعههای Generic Segment Offload (GSO) را که دستگاه جدید باید بپذیرد مشخص میکند.
- gro_max_size BYTES
- حداکثر اندازه بستهای را که توسط پشته GRO روی این دستگاه ساخته میشود مشخص میکند. این گزینه همچنین برای BIG TCP استفاده میشود تا اجازه دهد اندازه بسته ادغامشده IPv6 GSO روی این دستگاه بزرگتر از ۶۵۵۳۶ باشد.
- gro_ipv4_max_size BYTES
- حداکثر اندازه بسته IPv4 ساختهشده توسط پشته GRO روی این دستگاه را مشخص میکند. این گزینه بهویژه برای BIG TCP استفاده میشود تا اجازه دهد اندازه بسته ادغامشده IPv4 GSO روی این دستگاه بزرگتر از ۶۵۵۳۶ باشد.
- index IDX
- شاخص (index) مورد نظر دستگاه مجازی جدید را مشخص میکند. در صورتی که این شاخص در حال استفاده (اشغال) باشد، ایجاد پیوند با شکست مواجه میشود.
- netns
- { PID | NETNSNAME | NETNSFILE }
دستگاه را در فضای نام شبکه (network namespace) مرتبط با فرآیند PID یا نام NETNSNAME یا فایل NETNSFILE ایجاد میکند. - پشتیبانی از نوع VLAN (VLAN Type Support)
- برای یک
پیوند از
نوع VLAN
آرگومانهای
اضافی زیر
پشتیبانی
میشوند:
ip link add link DEVICE name NAME type vlan [ protocol VLAN_PROTO ] id VLANID [ reorder_hdr { on | off } ] [ gvrp { on | off } ] [ mvrp { on | off } ] [ loose_binding { on | off } ] [ bridge_binding { on | off } ] [ ingress-qos-map QOS-MAP ] [ egress-qos-map QOS-MAP ]
protocol VLAN_PROTO - یا 802.1Q یا 802.1ad.
id VLANID - شناسه VLAN (شناسه VLANID) مورد استفاده را مشخص میکند. توجه داشته باشید اعدادی که با « 0 » یا « 0x » آغاز میشوند، به ترتیب به صورت هشتهشتی (octal) یا هگزادسیمال تفسیر میشوند.
reorder_hdr { on | off } - مشخص میکند که آیا سرآیندهای اترنت مرتبسازی مجدد (reorder) میشوند یا خیر (پیشفرض on است).
اگر reorder_hdr برابر on باشد، سرآیند VLAN بلافاصله درج نخواهد شد، بلکه تنها پیش از ارسال به دستگاه فیزیکی (در صورتی که این دستگاه از بارگذاری سختافزاری VLAN پشتیبانی نکند) درج میشود؛ وضعیتی مشابه نیز در جهت RX برقرار است - بهطور پیشفرض تگ بسته پیش از دریافت توسط دستگاه VLAN برداشته میشود (untagged). مرتبسازی مجدد اجازه میدهد برچسبگذاری در جهت خروج (egress) تسریع شود و سرآیند VLAN در جهت ورود (ingress) پنهان بماند تا بسته شبیه یک بسته معمولی اترنت به نظر برسد؛ در عین حال، این امر ممکن است هنگام ضبط بستهها (packet capture) گیجکننده باشد زیرا سرآیند VLAN درون بسته وجود ندارد.بارگذاری سختافزاری VLAN (یا VLAN offloading) را میتوان توسط ethtool(8):
ethtool -k <phy_dev> | grep tx-vlan-offload
بررسی کرد، که در آن <phy_dev> دستگاه فیزیکی است که دستگاه VLAN به آن متصل شده است.
gvrp { on | off } - مشخص میکند که آیا این VLAN باید با استفاده از پروتکل ثبت GARP VLAN ثبت شود یا خیر.
mvrp { on | off } - مشخص میکند که آیا این VLAN باید با استفاده از پروتکل ثبت Multiple VLAN ثبت شود یا خیر.
loose_binding { on | off } - مشخص میکند که آیا وضعیت دستگاه VLAN به وضعیت دستگاه فیزیکی وابسته است یا خیر.
bridge_binding { on | off } - مشخص میکند که آیا وضعیت پیوند دستگاه VLAN وضعیت درگاههای پل (bridge) که عضو VLAN هستند را دنبال میکند یا خیر.
ingress-qos-map QOS-MAP - نگاشت فیلد prio سرآیند VLAN را به اولویت داخلی بسته در لینوکس برای فریمهای ورودی تعریف میکند. قالب آن به صورت FROM:TO است و نگاشتهای متعدد با فاصله از هم جدا میشوند.
egress-qos-map QOS-MAP - نگاشت اولویت داخلی بسته در لینوکس را به فیلد prio سرآیند VLAN برای فریمهای خروجی تعریف میکند. قالب آن همانند ingress-qos-map است.
اولویت بسته لینوکس را میتوان با iptables(8):
iptables -t mangle -A POSTROUTING [...] -j CLASSIFY --set-class 0:4
تنظیم کرد و این اولویت "4" را میتوان در نگاشت qos خروجی (egress) برای تنظیم prio مربوط به VLAN روی "5" استفاده کرد:
ip link set veth0.10 type vlan egress 4:5
- پشتیبانی از نوع VXLAN (VXLAN Type Support)
- برای یک
پیوند از
نوع VXLAN
آرگومانهای
اضافی زیر
پشتیبانی
میشوند:
ip link add DEVICE type vxlan id VNI [ dev PHYS_DEV ] [ { group | remote } IPADDR ] [ local { IPADDR | any } ] [ ttl TTL ] [ tos TOS ] [ df DF ] [ flowlabel FLOWLABEL ] [ dstport PORT ] [ srcport MIN MAX ] [ reserved_bits VALUE ] [ [no]learning ] [ [no]proxy ] [ [no]rsc ] [ [no]l2miss ] [ [no]l3miss ] [ [no]udpcsum ] [ [no]udp6zerocsumtx ] [ [no]udp6zerocsumrx ] [ [no]localbypass ] [ ageing SECONDS ] [ maxaddress NUMBER ] [ [no]external ] [ gbp ] [ gpe ] [ [no]vnifilter ] [ [no]mcroute ]
id VNI - شناسه شبکه VXLAN (یا شناسه قطعه VXLAN) مورد استفاده را مشخص میکند.
dev PHYS_DEV - دستگاه فیزیکی مورد استفاده برای ارتباط نقطه پایانی تونل را مشخص میکند.
group IPADDR - نشانی IP چندپخشی (multicast) برای پیوستن را مشخص میکند. این پارامتر را نمیتوان همراه با پارامتر remote مشخص کرد.
remote IPADDR - نشانی IP مقصد تکپخشی (unicast) را برای استفاده در بستههای خروجی، زمانی که نشانی لایه پیوند مقصد در پایگاه داده هدایت (forwarding database) دستگاه VXLAN شناخته شده نیست، مشخص میکند. این پارامتر را نمیتوان همراه با پارامتر group مشخص کرد.
local IPADDR - نشانی IP مبدأ را برای استفاده در بستههای خروجی مشخص میکند.
ttl TTL - مقدار TTL را برای استفاده در بستههای خروجی مشخص میکند.
tos TOS - مقدار TOS را برای استفاده در بستههای خروجی مشخص میکند.
df DF - استفاده از بیت پرچم Don't Fragment (DF) را در بستههای خروجی با سرآیندهای IPv4 مشخص میکند. مقدار inherit باعث میشود این بیت از سرآیند IP اصلی کپی شود. مقادیر unset و set به ترتیب باعث میشوند این بیت همواره غیرفعال یا همواره فعال باشد. بهطور پیشفرض، این بیت تنظیم نشده است.
flowlabel FLOWLABEL - برچسب جریان (flow label) را برای استفاده در بستههای خروجی مشخص میکند.
dstport PORT - درگاه مقصد UDP را برای برقراری ارتباط با نقطه پایانی راه دور تونل VXLAN مشخص میکند.
srcport MIN MAX - محدوده شماره درگاهها را برای استفاده به عنوان درگاههای مبدأ UDP جهت برقراری ارتباط با نقطه پایانی راه دور تونل VXLAN مشخص میکند.
reserved_bits VALUE - بهطور پیشفرض هسته بستههایی را که بیتهای تنظیمشده در خارج از فیلدهای مورد نیازِ ویژگیهای فعال روی دستگاه شبکه VXLAN دارند، رد میکند. reserved_bits یک مقدار ۶۴ بیتی است که مشخص میکند تنظیم کدام بیتها در یک سرآیند VXLAN باید امکانپذیر باشد. هر بیتِ تنظیمشده در این مقدار، یک بیتِ قابلقبول و مجاز در بسته است.
[no]learning - مشخص میکند که آیا نشانیهای ناشناخته لایه پیوند و نشانیهای IP مبدأ در پایگاه داده هدایت (forwarding database) دستگاه VXLAN ثبت شوند یا خیر.
[no]rsc - مشخص میکند که آیا میانبر مسیر (route short circuit) روشن باشد یا خیر.
[no]proxy - مشخص میکند که آیا پراکسی ARP روشن باشد یا خیر.
[no]l2miss - مشخص میکند که آیا اعلانهای عدم یافتن نشانی لایه پیوند (LLADDR miss) در netlink تولید شوند یا خیر.
[no]l3miss - مشخص میکند که آیا اعلانهای عدم یافتن نشانی IP (IP ADDR miss) در netlink تولید شوند یا خیر.
[no]udpcsum - مشخص میکند که آیا چکسام UDP برای بستههای ارسالشده روی IPv4 محاسبه شود یا خیر.
[no]udp6zerocsumtx - از محاسبه چکسام UDP برای بستههای ارسالشده روی IPv6 صرفنظر میکند.
[no]udp6zerocsumrx - بستههای UDP ورودی روی IPv6 با فیلد چکسام صفر را مجاز میشمارد.
[no]localbypass - اگر مقصد FDB محلی باشد، در صورت تنظیم nolocalbypass، بستههای کپسولهشده به پشته شبکه فضای کاربر (userspace) هدایت میشوند. اگر پردازهای در فضای کاربر در حال گوش دادن به این بستهها باشد، فرصت پردازش آنها را خواهد داشت. اگر localbypass فعال باشد (پیشفرض)، پشته شبکه هسته دور زده شده و بستهها به دستگاه VXLAN هدف (به فرض وجود) تزریق میشوند.
ageing SECONDS - طول عمر بر حسب ثانیه را برای مدخلهای FDB که توسط هسته یاد گرفته شدهاند مشخص میکند.
maxaddress NUMBER - حداکثر تعداد مدخلهای FDB را مشخص میکند.
[no]external - مشخص میکند که آیا یک لایه کنترل خارجی (external control plane) (مانند ip route encap) یا FDB داخلی باید استفاده شود.
[no]vnifilter - مشخص میکند که آیا دستگاه vxlan قابلیت فیلترسازی vni را دارد یا خیر. فقط با دستگاه vxlan که پرچم external روی آن تنظیم شده کار میکند. پس از فعالسازی، از دستور bridge vni برای مدیریت جدول فیلترسازی vni روی دستگاه استفاده میشود. دستگاه فقط میتواند بستههایی را با vniهایی دریافت کند که در جدول فیلترسازی vni پیکربندی شده باشند.
[no]mcroute - زمانی که تونل VXLAN یک مقصد راه دور چندپخشی دارد، مشخص میکند که بستههای لایه زیرین (underlay) مستقیماً به دستگاه فیزیکی ارسال شوند (پیشفرض)، یا اینکه مسیریابی چندپخشی شوند. در حالت دوم، به منظور تطبیق یک مسیر چندپخشی، (S,G) به ترتیب نشانی محلی و راه دور تونل هستند و iif دستگاه فیزیکی تونل است.
gbp - افزونه سیاست گروهی (VXLAN-GBP) را فعال میکند.
امکان انتقال زمینه سیاست گروهی را بین گرههای همتای شبکه VXLAN فراهم میکند. در صورت فعال بودن، نشانه (mark) یک بسته را در سرآیند VXLAN برای بستههای خروجی میگنجاند و برای بستههای ورودی، نشانه بسته را بر اساس اطلاعات موجود در سرآیند VXLAN مقداردهی میکند.قالب ۱۶ بیت بالایی نشانه بسته (پرچمها):
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|-|-|-|-|-|-|-|-|-|D|-|-|A|-|-|-|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+D := بیت Don't Learn (یاد نگیر). وقتی تنظیم شود، این بیت نشان میدهد که VTEP خروجی نباید نشانی مبدأ فریم کپسولهشده را یاد بگیرد.
A := نشان میدهد که سیاست گروهی قبلاً روی این بسته اعمال شده است. هنگامی که بیت A تنظیم شده باشد، سیاستها نباید توسط دستگاهها اعمال شوند.
قالب ۱۶ بیت پایینی نشانه بسته (شناسه سیاست):
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Group Policy ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
مثال:
iptables -A OUTPUT [...] -j MARK --set-mark 0x800FF
gpe - افزونه پروتکل عمومی (VXLAN-GPE) را فعال میکند. در حال حاضر، این قابلیت تنها به همراه کلمه کلیدی external پشتیبانی میشود.
- پشتیبانی از نوع VETH، VXCAN (VETH, VXCAN Type Support)
- برای یک
پیوند از
نوع VETH/VXCAN
آرگومانهای
اضافی زیر
پشتیبانی
میشوند:
ip link add DEVICE type { veth | vxcan } [ peer name NAME ]
peer name NAME - نام دستگاه جفت مجازیِ تونل VETH/VXCAN را مشخص میکند.
- پشتیبانی از نوع netkit (netkit Type Support)
- برای یک
پیوند از
نوع netkit
آرگومانهای
اضافی زیر
پشتیبانی
میشوند:
ip link add DEVICE type netkit [ mode MODE ] [ scrub SCRUB ] [ POLICY ] [ peer [ scrub SCRUB ] [ POLICY ] [ NAME ] ]
mode MODE - حالت عملکرد دستگاه netkit را با مقادیر ممکن "l3" و "l2" مشخص میکند. گزینه پیشفرض "l3" است.
scrub SCRUB - رفتار پاکسازی (scrub) دستگاه netkit را با مقادیر ممکن "default" و "none" مشخص میکند. با مقدار "default"، هنگامی که دستگاه همتای آن در یک فضای نام شبکه متفاوت قرار دارد، دستگاه فیلدهای skb->{mark,priority} را قبل از فراخوانی برنامه BPF متصلشده صفر میکند. با مقدار "none"، دستگاه پاکسازی skb->{mark,priority} را به برنامه BPF واگذار میکند. گزینه پیشفرض "default" است. مشخص کردن scrub قبل از گزینه peer به دستگاه اصلی و بعد از گزینه peer به دستگاه همتا اشاره دارد.
POLICY - خطمشی پیشفرض دستگاه را در صورت عدم اتصال برنامههای BPF با مقادیر ممکن "forward" و "blackhole" مشخص میکند. گزینه پیشفرض "forward" است. مشخص کردن policy قبل از گزینه peer به دستگاه اصلی و بعد از گزینه peer به دستگاه همتا اشاره دارد.
NAME - نام دستگاهِ همتا (peer) را مشخص میکند.
- پشتیبانی از انواع IPIP و SIT (IPIP, SIT Type Support)
- برای
پیوندی از
نوع IPIP یا SIT
آرگومانهای
اضافی زیر
پشتیبانی
میشوند:
ip link add DEVICE type { ipip | sit } remote ADDR local ADDR [ encap { fou | gue | none } ] [ encap-sport { PORT | auto } ] [ encap-dport PORT ] [ [no]encap-csum ] [ [no]encap-remcsum ] [ mode { ip6ip | ipip | mplsip | any } ] [ external ]
remote ADDR - آدرس راه دور تونل را تعیین میکند.
local ADDR - آدرس محلی ثابت را برای بستههای تونلشده تعیین میکند. این آدرس باید آدرسی روی رابط دیگری در این میزبان باشد.
encap { fou | gue | none } - نوع کپسولهسازی ثانویه UDP را تعیین میکند. "fou" نشاندهنده Foo-Over-UDP و "gue" نشاندهنده Generic UDP Encapsulation است.
encap-sport { PORT | auto } - درگاه مبدأ در کپسولهسازی UDP را تعیین میکند. PORT درگاه را بر اساس شماره مشخص میکند، "auto" مشخص میکند که شماره درگاه باید بهطور خودکار انتخاب شود (هسته یک جریان را بر اساس هش جریان (flow hash) بسته کپسولهشده انتخاب میکند).
[no]encap-csum - مشخص میکند که آیا چکسامهای UDP در کپسولهسازی ثانویه فعال باشند یا خیر.
[no]encap-remcsum - مشخص میکند که آیا تخلیه بار چکسام راه دور (Remote Checksum Offload) فعال باشد یا خیر. این گزینه فقط برای Generic UDP Encapsulation کاربرد دارد.
mode { ip6ip | ipip | mplsip | any } - حالتی را که دستگاه باید در آن کار کند تعیین میکند. "ip6ip" نشاندهنده IPv6-Over-IPv4، "ipip" نشاندهنده "IPv4-Over-IPv4"، "mplsip" نشاندهنده MPLS-Over-IPv4 و "any" نشاندهنده IPv6، IPv4 یا MPLS Over IPv4 است. برای SIT که پیشفرض آن "ip6ip" است و IPIP که پیشفرض آن "ipip" است، پشتیبانی میشود. IPv6-Over-IPv4 برای IPIP پشتیبانی نمیشود.
external - این تونل را تحت کنترل خارجی قرار میدهد (مانند ip route encap).
- پشتیبانی از نوع GRE (GRE Type Support)
- برای
پیوندی از
نوع GRE یا GRETAP
آرگومانهای
اضافی زیر
پشتیبانی
میشوند:
ip link add DEVICE type { gre | gretap } remote ADDR local ADDR [ [no][i|o]seq ] [ [i|o]key KEY | no[i|o]key ] [ [no][i|o]csum ] [ ttl TTL ] [ tos TOS ] [ [no]pmtudisc ] [ [no]ignore-df ] [ dev PHYS_DEV ] [ encap { fou | gue | none } ] [ encap-sport { PORT | auto } ] [ encap-dport PORT ] [ [no]encap-csum ] [ [no]encap-remcsum ] [ external ]
remote ADDR - آدرس راه دور تونل را تعیین میکند.
local ADDR - آدرس محلی ثابت را برای بستههای تونلشده تعیین میکند. این آدرس باید آدرسی روی رابط دیگری در این میزبان باشد.
[no][i|o]seq - توالیبندی بستهها. پرچم oseq توالیگذاری بستههای خروجی را فعال میکند. پرچم iseq الزام میکند که همه بستههای ورودی دارای توالی باشند.
[i|o]key KEY | no[i|o]key - استفاده از GRE کلیددار با کلید KEY. KEY یا یک عدد است یا یک چهاربخشی نقطهدار مشابه آدرس IPv4. پارامتر key همان کلید را برای استفاده در هر دو جهت مشخص میکند. پارامترهای ikey و okey کلیدهای متفاوتی را برای ورودی و خروجی تعیین میکنند.
[no][i|o]csum - تولید/الزام چکسام برای بستههای تونلشده. پرچم ocsum چکسام را برای بستههای خروجی محاسبه میکند. پرچم icsum الزام میکند که همه بستههای ورودی دارای چکسام صحیح باشند. پرچم csum معادل ترکیب icsum ocsum است.
ttl TTL - مقدار TTL را برای استفاده در بستههای خروجی تعیین میکند.
tos TOS - مقدار TOS را برای استفاده در بستههای خروجی تعیین میکند.
[no]pmtudisc - کشف MTU مسیر (Path MTU Discovery) را روی این تونل فعال/غیرفعال میکند. این گزینه بهطور پیشفرض فعال است. توجه داشته باشید که یک ttl ثابت با این گزینه ناسازگار است: تونلسازی با یک ttl ثابت همیشه کشف pmtu را انجام میدهد.
[no]ignore-df - سرکوب فلگ DF در IPv4 را روی این تونل فعال/غیرفعال میکند. بهطور معمول دیتاگرامهایی که از MTU فراتر روند قطعهقطعه میشوند؛ وجود فلگ DF مانع از این کار شده و در عوض منجر به پیام ICMP Unreachable (Fragmentation Required) میشود. فعالسازی این ویژگی باعث نادیده گرفتن فلگ DF میگردد.
dev PHYS_DEV - دستگاه فیزیکی مورد استفاده برای ارتباط نقطه پایانی تونل را تعیین میکند.
encap { fou | gue | none } - نوع کپسولهسازی ثانویه UDP را تعیین میکند. "fou" نشاندهنده Foo-Over-UDP و "gue" نشاندهنده Generic UDP Encapsulation است.
encap-sport { PORT | auto } - درگاه مبدأ در کپسولهسازی UDP را تعیین میکند. PORT درگاه را بر اساس شماره مشخص میکند، "auto" مشخص میکند که شماره درگاه باید بهطور خودکار انتخاب شود (هسته یک جریان را بر اساس هش جریان (flow hash) بسته کپسولهشده انتخاب میکند).
[no]encap-csum - مشخص میکند که آیا چکسامهای UDP در کپسولهسازی ثانویه فعال باشند یا خیر.
[no]encap-remcsum - مشخص میکند که آیا تخلیه بار چکسام راه دور (Remote Checksum Offload) فعال باشد یا خیر. این گزینه فقط برای Generic UDP Encapsulation کاربرد دارد.
external - این تونل را تحت کنترل خارجی قرار میدهد (مانند ip route encap).
- پشتیبانی از انواع IP6GRE و IP6GRETAP (IP6GRE/IP6GRETAP Type Support)
- برای
پیوندی از
نوع IP6GRE/IP6GRETAP
آرگومانهای
اضافی زیر
پشتیبانی
میشوند:
ip link add DEVICE type { ip6gre | ip6gretap } remote ADDR local ADDR [ [no][i|o]seq ] [ [i|o]key KEY | no[i|o]key ] [ [no][i|o]csum ] [ hoplimit TTL ] [ encaplimit ELIM ] [ tclass TCLASS ] [ flowlabel FLOWLABEL ] [ dscp inherit ] [ [no]allow-localremote ] [ dev PHYS_DEV ] [ external ]
remote ADDR - آدرس IPv6 راه دور تونل را تعیین میکند.
local ADDR - آدرس IPv6 محلی ثابت را برای بستههای تونلشده تعیین میکند. این آدرس باید آدرسی روی رابط دیگری در این میزبان باشد.
[no][i|o]seq - توالیبندی بستهها. پرچم oseq توالیگذاری بستههای خروجی را فعال میکند. پرچم iseq الزام میکند که همه بستههای ورودی دارای توالی باشند.
[i|o]key KEY | no[i|o]key - استفاده از GRE کلیددار با کلید KEY. KEY یا یک عدد است یا یک چهاربخشی نقطهدار مشابه آدرس IPv4. پارامتر key همان کلید را برای استفاده در هر دو جهت مشخص میکند. پارامترهای ikey و okey کلیدهای متفاوتی را برای ورودی و خروجی تعیین میکنند.
[no][i|o]csum - تولید/الزام چکسام برای بستههای تونلشده. پرچم ocsum چکسام را برای بستههای خروجی محاسبه میکند. پرچم icsum الزام میکند که همه بستههای ورودی دارای چکسام صحیح باشند. پرچم csum معادل ترکیب icsum ocsum است.
hoplimit TTL - مقدار Hop Limit را برای استفاده در بستههای خروجی تعیین میکند.
encaplimit ELIM - یک محدودیت کپسولهسازی ثابت را تعیین میکند. مقدار پیشفرض 4 است.
flowlabel FLOWLABEL - یک برچسب جریان ثابت را تعیین میکند.
[no]allow-localremote - مشخص میکند که آیا به نقطه پایانی راه دور اجازه داده شود آدرسی پیکربندیشده روی میزبان محلی داشته باشد یا خیر.
tclass TCLASS - فیلد کلاس ترافیک (traffic class) را روی بستههای تونلشده تعیین میکند، که میتواند بهصورت یک مقدار هگزادسیمال دو رقمی (مانند c0) یا یک رشته از پیشتعریفشده (مانند internet) مشخص شود. مقدار inherit باعث میشود این فیلد از سرایند اصلی IP کپی شود. مقادیر inherit/STRING یا inherit/00..ff هنگام تونلسازی بستههای غیر IP، این فیلد را روی STRING یا 00..ff تنظیم میکنند. مقدار پیشفرض 00 است.
external - این تونل را تحت کنترل خارجی قرار میدهد (یا خیر، که حالت پیشفرض است). در هسته، به این حالت جمعآوری فراداده (collect metadata mode) گفته میشود. این پرچم با گزینههای remote، local، seq، key، csum، hoplimit، encaplimit، flowlabel و tclass مانعةالجمع (ناسازگار با یکدیگر) است.
- پشتیبانی از نوع IPoIB (IPoIB Type Support)
- برای
پیوندی از
نوع IPoIB
آرگومانهای
اضافی زیر
پشتیبانی
میشوند:
ip link add DEVICE name NAME type ipoib [ pkey PKEY ] [ mode MODE ]
pkey PKEY - کلید IB P-Key مورد استفاده را تعیین میکند.
mode MODE - حالت مورد استفاده (datagram یا connected) را تعیین میکند.
- پشتیبانی از نوع ERSPAN (ERSPAN Type Support)
- برای
پیوندی از
نوع ERSPAN/IP6ERSPAN
آرگومانهای
اضافی زیر
پشتیبانی
میشوند:
ip link add DEVICE type { erspan | ip6erspan } remote ADDR local ADDR seq key KEY erspan_ver version [ erspan IDX ] [ erspan_dir { ingress | egress } ] [ erspan_hwid hwid ] [ [no]allow-localremote ] [ external ]
remote ADDR - آدرس راه دور تونل را تعیین میکند.
local ADDR - آدرس محلی ثابت را برای بستههای تونلشده تعیین میکند. این آدرس باید آدرسی روی رابط دیگری در این میزبان باشد.
erspan_ver version - شماره نسخه ERSPAN را تعیین میکند. version نسخه ERSPAN را که باید ایجاد شود مشخص میکند: 0 برای نسخه 0 نوع I، 1 برای نسخه 1 (نوع II) یا 2 برای نسخه 2 (نوع III).
erspan IDX - فیلد شاخص ERSPAN v1 را تعیین میکند. IDX یک شماره شاخص/درگاه 20 بیتی مرتبط با درگاه مبدأ و جهت ترافیک ERSPAN را مشخص میکند.
erspan_dir { ingress | egress } - جهت ترافیک آینهشده (mirrored traffic) در ERSPAN v2 را تعیین میکند.
erspan_hwid hwid - یک شناسه یکتا برای یک موتور ERSPAN v2 درون سیستم است. hwid یک مقدار 6 بیتی برای پیکربندی توسط کاربر است.
[no]allow-localremote - مشخص میکند که آیا به نقطه پایانی راه دور اجازه داده شود آدرسی پیکربندیشده روی میزبان محلی داشته باشد یا خیر.
external - این تونل را تحت کنترل خارجی قرار میدهد (یا خیر، که حالت پیشفرض است). در هسته، به این حالت جمعآوری فراداده (collect metadata mode) گفته میشود. این پرچم با گزینههای remote، local، erspan_ver، erspan، erspan_dir و erspan_hwid مانعةالجمع (ناسازگار با یکدیگر) است.
- پشتیبانی از نوع GENEVE (GENEVE Type Support)
- برای
پیوندی از
نوع GENEVE
آرگومانهای
اضافی زیر
پشتیبانی
میشوند:
ip link add DEVICE type geneve id VNI remote IPADDR [ local IPADDR ] [ ttl TTL ] [ tos TOS ] [ df DF ] [ flowlabel FLOWLABEL ] [ dstport PORT ] [ [no]external ] [ [no]udpcsum ] [ [no]udp6zerocsumtx ] [ [no]udp6zerocsumrx ] [ innerprotoinherit ]
id VNI - شناسه شبکه مجازی (Virtual Network Identifier) را برای استفاده مشخص میکند.
remote IPADDR - آدرس IP مقصد تکپخشی (unicast) را برای استفاده در بستههای خروجی مشخص میکند.
local IPADDR - آدرس IP مبدأ را برای شنود ترافیک مشخص میکند.
ttl TTL - مقدار TTL را برای استفاده در بستههای خروجی مشخص میکند. مقدار "0" یا "auto" به معنای استفاده از مقدار پیشفرض است، "inherit" به معنای به ارث بردن ttl پروتکل داخلی است. گزینه پیشفرض "0" است.
tos TOS - مقدار TOS را برای استفاده در بستههای خروجی مشخص میکند.
df DF - استفاده از بیت پرچم Don't Fragment (DF) را در بستههای خروجی دارای سرآیندهای IPv4 مشخص میکند. مقدار inherit باعث کپی شدن بیت از سرآیند اصلی IP میشود. مقادیر unset و set به ترتیب باعث میشوند این بیت همیشه غیرفعال یا همیشه فعال باشد. بهطور پیشفرض، این بیت تنظیم نشده است (غیرفعال است).
flowlabel FLOWLABEL - برچسب جریان (flow label) را برای استفاده در بستههای خروجی مشخص میکند.
dstport PORT - انتخاب یک درگاه مقصد به غیر از مقدار پیشفرض 6081.
[no]external - این تونل را بهصورت خارجی کنترلشده درمیآورد (یا کنترلنشده، که حالت پیشفرض است). این پرچم با گزینههای id, remote, ttl, tos و flowlabel مانعةالجمع است.
[no]udpcsum - مشخص میکند که آیا چکسام UDP برای بستههای ارسالی روی IPv4 محاسبه شود یا خیر.
[no]udp6zerocsumtx - صرفنظر کردن از محاسبه چکسام UDP برای بستههای ارسالی روی IPv6.
[no]udp6zerocsumrx - مجاز دانستن بستههای ورودی UDP روی IPv6 با فیلد چکسام صفر.
innerprotoinherit - استفاده از IPv4/IPv6 به عنوان پروتکل داخلی به جای Ethernet.
- پشتیبانی از نوع Bareudp (Bareudp Type Support)
- برای
پیوندی از
نوع Bareudp
آرگومانهای
اضافی زیر
پشتیبانی
میشوند:
ip link add DEVICE type bareudp dstport PORT ethertype PROTO [ srcportmin PORT ] [ [no]multiproto ]
dstport PORT - درگاه مقصد را برای تونل UDP مشخص میکند.
ethertype PROTO - مقدار ethertype پروتکل لایه ۳ که تونل میشود را مشخص میکند. ethertype میتواند به عنوان شماره پروتکل ساده Ethernet یا با استفاده از نام پروتکل ("ipv4"، "ipv6"، "mpls_uc" و غیره) تعیین شود.
srcportmin PORT - کمترین مقدار محدوده درگاه مبدأ تونل UDP را انتخاب میکند.
[no]multiproto - پشتیبانی از پروتکلهای مشابه پروتکل مشخصشده توسط ethertype را فعال میکند. هنگامی که ethertype برابر "mpls_uc" باشد (یعنی MPLS تکپخشی)، این گزینه به تونل امکان میدهد MPLS چندپخشی را نیز مدیریت کند. هنگامی که ethertype برابر "ipv4" باشد، این گزینه به تونل اجازه میدهد IPv6 را نیز مدیریت کند. این گزینه بهطور پیشفرض غیرفعال است.
- پشتیبانی از نوع AMT (AMT Type Support)
- برای
پیوندی از
نوع AMT
آرگومانهای
اضافی زیر
پشتیبانی
میشوند:
ip link add DEVICE type AMT discovery IPADDR mode { gateway | relay } local IPADDR dev PHYS_DEV [ relay_port PORT ] [ gateway_port PORT ] [ max_tunnels NUMBER ]
discovery IPADDR - آدرس IP تکپخشی اکتشاف (discovery) را برای یافتن آدرس IP راه دور مشخص میکند.
mode { gateway | relay } - نقش AMT را مشخص میکند: Gateway (درگاه) یا Relay (رله)
local IPADDR - آدرس IP مبدأ را برای استفاده در بستههای خروجی مشخص میکند.
dev PHYS_DEV - رابط فیزیکی زیرین را که ترافیک تبدیل از طریق آن ارسال و دریافت میشود مشخص میکند.
relay_port PORT - درگاه UDP رله را برای برقراری ارتباط با Relay مشخص میکند.
gateway_port PORT - درگاه UDP گیتوی را برای برقراری ارتباط با Gateway مشخص میکند.
max_tunnels NUMBER - حداکثر تعداد تونلها را مشخص میکند.
- پشتیبانی از نوع MACVLAN و MACVTAP (MACVLAN and MACVTAP Type Support)
- برای
پیوندی از
نوع MACVLAN یا MACVTAP
آرگومانهای
اضافی زیر
پشتیبانی
میشوند:
ip link add link DEVICE name NAME type { macvlan | macvtap } mode { private | vepa | bridge | passthru [ nopromisc ] | source [ nodst ] } [ bcqueuelen { LENGTH } ] [ bclim LIMIT ]
type { macvlan | macvtap } - نوع پیوند مورد استفاده را مشخص میکند. macvlan فقط یک رابط مجازی ایجاد میکند، در حالی که macvtap علاوه بر آن یک دستگاه کاراکتری (character device) به نام /dev/tapX ایجاد میکند تا دقیقاً مانند یک دستگاه tuntap استفاده شود.
mode private - اجازه برقراری ارتباط بین نمونههای macvlan روی رابط فیزیکی یکسان را نمیدهد، حتی اگر سوئیچ خارجی از حالت hairpin پشتیبانی کند.
mode vepa - حالت Virtual Ethernet Port Aggregator (تجمیعکننده پورت اترنت مجازی). دادهها از یک نمونه macvlan به نمونه دیگر روی همان رابط فیزیکی از طریق رابط فیزیکی انتقال مییابند. یا سوئیچ متصل باید از حالت hairpin پشتیبانی کند، یا باید یک مسیریاب TCP/IP وجود داشته باشد که بستهها را برای برقراری ارتباط هدایت کند. این حالت پیشفرض است.
mode bridge - در حالت bridge (پل)، همه نقاط پایانی مستقیماً به یکدیگر متصل هستند و ارتباط از طریق طرف مقابل رابط فیزیکی بازهدایت نمیشود.
mode passthru [ nopromisc ] - این حالت گذر مستقیم (پاسترو / passthrough) اختیارات بیشتری به یک نقطه پایانی منفرد میدهد، معمولاً در حالت macvtap . این حالت برای بیش از یک نقطه پایانی روی همان رابط فیزیکی مجاز نیست. تمام ترافیک به این نقطه پایانی هدایت خواهد شد، که به مهمانهای virtio اجازه میدهد آدرس MAC را تغییر دهند یا حالت promiscuous را تنظیم کنند تا رابط را پل (bridge) کرده یا رابطهای vlan را روی آن ایجاد نمایند. بهطور پیشفرض، این حالت رابط زیرین را به حالت promiscuous وادار میکند. ارسال پرچم nopromisc از این کار جلوگیری میکند، بنابراین پرچم promisc میتواند با استفاده از ابزارهای استاندارد کنترل شود.
mode source [ nodst ] - امکان تنظیم فهرستی از آدرسهای mac مجاز را فراهم میکند که برای تطبیق با آدرس mac مبدأ از فریمهای دریافتی روی رابط زیرین استفاده میشود. این قابلیت امکان ایجاد ارتباطهای VLAN مبتنی بر mac را به جای موارد استاندارد مبتنی بر درگاه یا برچسب فراهم میآورد. این ویژگی برای پیادهسازی رفتار مبتنی بر mac در 802.1x مفید است، در جاهایی که درایورهای رابطهای زیرین اجازه آن را نمیدهند. بهطور پیشفرض، بستهها برای MACVLAN مبتنی بر مقصد نیز در نظر گرفته میشوند (تکثیر میشوند). ارسال پرچم nodst مانع از آن میشود که بستههای منطبق از جریان مبتنی بر مقصد نیز عبور کنند.
bcqueuelen { LENGTH } - طول صف RX مورد استفاده برای پردازش بستههای همگانی (broadcast) و چندپخشی (multicast) را تنظیم میکند. LENGTH باید یک عدد صحیح مثبت در محدوده [0-4294967295] باشد. تنظیم طول 0 بهطور مؤثری تمام ترافیک همگانی/چندپخشی را دور میاندازد (drop میکند). در صورت عدم تعیین، مقدار پیشفرض درایور macvlan یعنی (1000) استفاده میشود. توجه داشته باشید که همه macvlanهایی که از یک دستگاه زیرین مشترک استفاده میکنند از یک صف یکسان بهره میبرند. پارامتر در اینجا یک درخواست است، طول واقعی صف استفادهشده برابر با حداکثر طولی خواهد بود که هر یک از رابطهای macvlan درخواست کرده است. هنگام فهرست کردن پارامترهای دستگاه، هم پارامتر bcqueuelen و هم bcqueuelen واقعی استفادهشده فهرست میشوند تا به کاربر در درک بهتر این تنظیم کمک کنند.
bclim LIMIT - آستانه صفبندی همگانی (broadcast queueing) را تنظیم میکند. LIMIT باید یک عدد صحیح ۳۲ بیتی باشد. تنظیم این مقدار روی -1 صفبندی همگانی را کاملاً غیرفعال میکند. در غیر این صورت، اگر تعداد دستگاههایی که از یک آدرس چندپخشی استفاده میکنند بیشتر از مقدار دادهشده باشد، آن آدرس به عنوان همگانی در صف قرار میگیرد.
- پشتیبانی از HSR (High-availability Seamless Redundancy)
- برای
پیوندی از
نوع HSR
آرگومانهای
اضافی زیر
پشتیبانی
میشوند:
ip link add link DEVICE name NAME type hsr slave1 SLAVE1-IF slave2 SLAVE2-IF [ interlink INTERLINK-IF ] [ supervision ADDR-BYTE ] [ version { 0 | 1 } [ proto { 0 | 1 } ]
type hsr - نوع پیوند مورد استفاده را مشخص میکند، در اینجا HSR.
slave1 SLAVE1-IF - دستگاه فیزیکی مورد استفاده برای اولین درگاه از دو درگاه حلقه (ring ports) را مشخص میکند.
slave2 SLAVE2-IF - دستگاه فیزیکی مورد استفاده برای دومین درگاه از دو درگاه حلقه را مشخص میکند.
interlink INTERLINK-IF - دستگاه میانپیوند (interlink) متصل به شبکه HSR برای اتصال دستگاه(های) SAN.
supervision ADDR-BYTE - آخرین بایت آدرس چندپخشی مورد استفاده برای فریمهای نظارتی HSR. گزینه پیشفرض "0" است، مقادیر ممکن 0-255 هستند.
version { 0 | 1 } - نسخه پروتکل رابط را انتخاب میکند. گزینه پیشفرض "0" است که مربوط به نسخه ۲۰۱۰ استاندارد HSR میباشد. گزینه "1" نسخه ۲۰۱۲ را فعال میکند.
proto { 0 | 1 } - پروتکل را در رابط انتخاب میکند. گزینه پیشفرض "0" است که مربوط به استاندارد HSR میباشد. گزینه "1" پروتکل افزونگی موازی (Parallel Redundancy Protocol - PRP) را فعال میکند.
- پشتیبانی از نوع BRIDGE (BRIDGE Type Support)
- برای
پیوندی از
نوع BRIDGE
آرگومانهای
اضافی زیر
پشتیبانی
میشوند:
ip link add DEVICE type bridge [ ageing_time AGEING_TIME ] [ group_fwd_mask MASK ] [ group_address ADDRESS ] [ forward_delay FORWARD_DELAY ] [ hello_time HELLO_TIME ] [ max_age MAX_AGE ] [ stp_state STP_STATE ] [ stp_mode STP_MODE ] [ mst_enabled MST_ENABLED ] [ priority PRIORITY ] [ no_linklocal_learn NO_LINKLOCAL_LEARN ] [ fdb_local_vlan_0 FDB_LOCAL_VLAN_0 ] [ fdb_max_learned FDB_MAX_LEARNED ] [ vlan_filtering VLAN_FILTERING ] [ vlan_protocol VLAN_PROTOCOL ] [ vlan_default_pvid VLAN_DEFAULT_PVID ] [ vlan_stats_enabled VLAN_STATS_ENABLED ] [ vlan_stats_per_port VLAN_STATS_PER_PORT ] [ mcast_snooping MULTICAST_SNOOPING ] [ mcast_vlan_snooping MULTICAST_VLAN_SNOOPING ] [ mcast_router MULTICAST_ROUTER ] [ mcast_query_use_ifaddr MCAST_QUERY_USE_IFADDR ] [ mcast_querier MULTICAST_QUERIER ] [ mcast_hash_elasticity HASH_ELASTICITY ] [ mcast_hash_max HASH_MAX ] [ mcast_last_member_count LAST_MEMBER_COUNT ] [ mcast_startup_query_count STARTUP_QUERY_COUNT ] [ mcast_last_member_interval LAST_MEMBER_INTERVAL ] [ mcast_membership_interval MEMBERSHIP_INTERVAL ] [ mcast_querier_interval QUERIER_INTERVAL ] [ mcast_query_interval QUERY_INTERVAL ] [ mcast_query_response_interval QUERY_RESPONSE_INTERVAL ] [ mcast_startup_query_interval STARTUP_QUERY_INTERVAL ] [ mcast_stats_enabled MCAST_STATS_ENABLED ] [ mcast_igmp_version IGMP_VERSION ] [ mcast_mld_version MLD_VERSION ] [ nf_call_iptables NF_CALL_IPTABLES ] [ nf_call_ip6tables NF_CALL_IP6TABLES ] [ nf_call_arptables NF_CALL_ARPTABLES ] [ mdb_offload_fail_notification MDB_OFFLOAD_FAIL_NOTIFICATION ]
ageing_time AGEING_TIME - پیکربندی زمان کهنگی / انقضا (ageing time) ورودیهای FDB پل؛ یعنی تعداد ثانیههایی که یک آدرس MAC پس از دریافت بسته از آن آدرس، در FDB نگهداری میشود. پس از گذشت این زمان، ورودیها پاکسازی میشوند.
group_fwd_mask MASK - تنظیم ماسک هدایت گروهی (group forward mask). این ماسک بیتی است که برای تصمیمگیری در مورد هدایت فریمهای ورودی به مقصد آدرسهای محلی پیوند (link-local)، یعنی آدرسهایی به شکل 01:80:C2:00:00:0X اعمال میشود (پیشفرض 0 است، یعنی پل هیچ فریم محلی پیوندی را هدایت نمیکند).
group_address ADDRESS - تنظیم آدرس MAC گروه چندپخشی که این پل برای درخت پوشا (STP) استفاده میکند. آدرس باید یک آدرس محلی پیوند در قالب استاندارد آدرس MAC اترنت باشد، یعنی آدرسی به شکل 01:80:C2:00:00:0X، به طوری که X در بازه [0, 4..f] قرار داشته باشد.
forward_delay FORWARD_DELAY - تنظیم تاخیر هدایت (forwarding delay) بر حسب ثانیه، یعنی مدت زمان سپریشده در وضعیت LISTENING (پیش از رفتن به LEARNING) و در وضعیت LEARNING (پیش از رفتن به FORWARDING). تنها در صورت فعال بودن STP مرتبط است. مقادیر معتبر بین 2 و 30 هستند.
hello_time HELLO_TIME - تنظیم زمان بر حسب ثانیه بین بستههای hello ارسالشده توسط پل، هنگامی که یک پل ریشه یا یک پل تعیینشده (designated bridge) است. تنها در صورت فعال بودن STP مرتبط است. مقادیر معتبر بین 1 و 10 هستند.
max_age MAX_AGE - تنظیم مهلت زمانی (timeout) بسته hello، یعنی زمان بر حسب ثانیه تا هنگامی که فرض شود پل دیگری در درخت پوشا (spanning tree) پس از دریافت آخرین پیام hello آن، از کار افتاده است. تنها در صورت فعال بودن STP مرتبط است. مقادیر معتبر بین 6 و 40 هستند.
stp_state STP_STATE - فعال کردن پروتکل درخت پوشا (STP) (STP_STATE > 0) یا غیرفعال کردن آن (STP_STATE == 0). برای این پل.
stp_mode STP_MODE - تنظیم حالت STP برای این پل. این گزینه نحوه انتخاب پل میان STP فضای کاربری (userspace) و هسته (kernel) را هنگامی که STP از طریق stp_state فعال شده باشد، کنترل میکند. STP_MODE میتواند یکی از موارد زیر باشد:
auto (پیشفرض) - فراخوانی ابزار کمکی /sbin/bridge-stp برای واگذاری پل به دیمن STP در فضای کاربری. این مورد تنها در فضای نام شبکه اولیه (initial network namespace) انجام میشود؛ در سایر فضاهای نام، به STP هسته برمیگردد (fallback).
user - فعالسازی مستقیم STP در فضای کاربری بدون فراخوانی ابزار کمکی. در هر فضای نام شبکهای کار میکند. فراخواننده مسئول ثبت پل در دیمن STP فضای کاربری است.
kernel - فعالسازی مستقیم STP هسته بدون فراخوانی ابزار کمکی.
تنها زمانی قابل تغییر است که STP غیرفعال باشد. هر دوی stp_mode و stp_state را میتوان در یک دستور تنظیم کرد.
mst_enabled MST_ENABLED - فعال کردن پشتیبانی از درخت پوشای چندگانه (MST) (MST_ENABLED > 0) یا غیرفعال کردن آن (MST_ENABLED == 0). در صورت فعال بودن، مجموعههایی از VLANها میتوانند با چندین نمونه درخت پوشا (MSTIs) مرتبط شوند و وضعیتهای STP برای هر درگاه بر اساس هر MSTI کنترل گردد. توجه: هیچ پیادهسازی از پروتکل MSTP ارائه نشده است، بلکه فقط پایههای اولیهی مورد نیاز برای پیادهسازی آن فراهم شده است. برای جلوگیری از تداخل با وضعیتهای قدیمی STP به ازای هر VLAN، این تنظیم تنها زمانی قابل تغییر است که هیچ VLAN پلی پیکربندی نشده باشد.
priority PRIORITY - تنظیم اولویت درخت پوشای این پل، که در فرآیند انتخاب پل ریشه STP استفاده میشود. PRIORITY یک عدد صحیح بدون علامت 16 بیتی است.
no_linklocal_learn NO_LINKLOCAL_LEARN - فعال کردن یادگیری محلی پیوند (link-local learning) (NO_LINKLOCAL_LEARN == 0) یا غیرفعال کردن آن (NO_LINKLOCAL_LEARN > 0). در صورت غیرفعال بودن، پل از فریمهای محلی پیوند یادگیری انجام نمیدهد (پیشفرض: فعال).
fdb_local_vlan_0 FDB_LOCAL_VLAN_0 در صورت غیرفعال بودن، ورودیهای محلی FDB (یعنی ورودیهای مربوط به آدرسهای درگاههای عضو و آدرس خود پل) علاوه بر هر VLAN عضو، در VLAN 0 نیز نگهداری میشوند. وقتی این گزینه فعال باشد، آنها فقط در VLAN 0 نگهداری میشوند. این گزینه بهطور پیشفرض غیرفعال است.
هنگامی که این گزینه فعال باشد، هنگام تصمیمگیری برای هدایت، پل برای یافتن ورودی منطبقی که دائمی (permanent) است اما توسط کاربر اضافه نشده، VLAN 0 را بررسی میکند. با این حال در سایر موارد ورودی فقط روی VLAN 0 وجود دارد. این امر بر خروجی گرفتن (dumping) تأثیر میگذارد، بهطوری که ورودیها در VLANهای غیر صفر نشان داده نمیشوند، و عملیات get و flush در FDB نیز ورودی را در VLANهای غیر صفر پیدا نمیکنند. هنگامی که ورودی حذف شود، بر هدایت در تمام VLANها تأثیر میگذارد.
fdb_max_learned FDB_MAX_LEARNED - تنظیم حداکثر تعداد ورودیهای FDB یادگرفتهشده. اگر (FDB_MAX_LEARNED == 0) باشد، این قابلیت غیرفعال است. مقدار پیشفرض 0 است. FDB_MAX_LEARNED یک عدد صحیح بدون علامت 32 بیتی است.
vlan_filtering VLAN_FILTERING - فعال کردن فیلترسازی VLAN (VLAN_FILTERING > 0) یا غیرفعال کردن آن (VLAN_FILTERING == 0). در صورت غیرفعال بودن، پل هنگام پردازش بستهها برچسب (tag) VLAN را در نظر نمیگیرد.
vlan_protocol { 802.1Q | 802.1ad } - تنظیم پروتکل مورد استفاده برای فیلترسازی VLAN.
vlan_default_pvid VLAN_DEFAULT_PVID - تنظیم PVID پیشفرض (شناسه VLAN بومی/بدون برچسب یا native/untagged VLAN ID) برای این پل.
vlan_stats_enabled VLAN_STATS_ENABLED - فعال کردن (VLAN_STATS_ENABLED == 1) یا غیرفعال کردن (VLAN_STATS_ENABLED == 0) ثبت آمار به ازای هر VLAN.
vlan_stats_per_port VLAN_STATS_PER_PORT - فعال کردن (VLAN_STATS_PER_PORT == 1) یا غیرفعال کردن (VLAN_STATS_PER_PORT == 0) ثبت آمار به ازای هر درگاه و هر VLAN. تنها در صورتی قابل تغییر است که هیچ VLAN درگاهی پیکربندی نشده باشد.
mcast_snooping MULTICAST_SNOOPING - فعال کردن تجسس چندپخشی (multicast snooping) (MULTICAST_SNOOPING > 0) یا غیرفعال کردن آن (MULTICAST_SNOOPING == 0).
mcast_vlan_snooping MULTICAST_VLAN_SNOOPING - فعال کردن تجسس چندپخشی VLAN (MULTICAST_VLAN_SNOOPING > 0) یا غیرفعال کردن آن (MULTICAST_VLAN_SNOOPING == 0).
mcast_router MULTICAST_ROUTER - تنظیم روتر چندپخشی پل در صورت فعال بودن IGMP snooping. MULTICAST_ROUTER یک مقدار عددی صحیح با معانی زیر است:
0 - غیرفعال.
1 - خودکار (پرسوجو شده / queried).
2 - برای همیشه فعال.
mcast_query_use_ifaddr MCAST_QUERY_USE_IFADDR - تعیین اینکه آیا از آدرس IP خود پل به عنوان آدرس مبدا برای پرسوجوهای IGMP استفاده شود (MCAST_QUERY_USE_IFADDR > 0) یا مقدار پیشفرض 0.0.0.0 (MCAST_QUERY_USE_IFADDR == 0).
mcast_querier MULTICAST_QUERIER - فعال کردن (MULTICAST_QUERIER > 0) یا غیرفعال کردن (MULTICAST_QUERIER == 0) پرسوجوکننده IGMP (IGMP querier)، یعنی ارسال پرسوجوهای چندپخشی توسط پل (پیشفرض: غیرفعال).
mcast_querier_interval QUERIER_INTERVAL - فاصله زمانی بین پرسوجوهای ارسالشده توسط سایر روترها. اگر پس از سپری شدن این تاخیر هیچ پرسوجویی دیده نشود، پل شروع به ارسال پرسوجوهای خود خواهد کرد (مانند حالتی که mcast_querier فعال شده باشد).
mcast_hash_elasticity HASH_ELASTICITY - تنظیم کشسانی درهمسازی (hash elasticity) پایگاهداده چندپخشی؛ یعنی حداکثر طول زنجیره در جدول درهمسازی (هش) چندپخشی (پیشفرض: 4).
mcast_hash_max HASH_MAX - تنظیم حداکثر اندازه جدول درهمسازی (هش) چندپخشی (پیشفرض: 512، مقدار باید توانی از 2 باشد).
mcast_last_member_count LAST_MEMBER_COUNT - تنظیم شمارش آخرین عضو چندپخشی (multicast last member count)، یعنی تعداد پرسوجوهایی که پل پس از دریافت پیام «خروج» (leave) پیش از متوقف کردن هدایت یک گروه چندپخشی ارسال میکند (پیشفرض: 2).
mcast_last_member_interval LAST_MEMBER_INTERVAL - فاصله زمانی بین پرسوجوها برای یافتن اعضای باقیمانده یک گروه، پس از دریافت پیام «خروج» (leave).
mcast_startup_query_count STARTUP_QUERY_COUNT - تنظیم تعداد پرسوجوهای IGMP ارسالی در طول فاز راهاندازی (پیشفرض: 2).
mcast_startup_query_interval STARTUP_QUERY_INTERVAL - فاصله زمانی بین پرسوجوها در فاز راهاندازی.
mcast_query_interval QUERY_INTERVAL - فاصله زمانی بین پرسوجوهای ارسالشده توسط پل پس از پایان فاز راهاندازی.
mcast_query_response_interval QUERY_RESPONSE_INTERVAL - تنظیم حداکثر زمان پاسخ / حداکثر تاخیر پاسخ (Max Response Time/Maximum Response Delay) برای پرسوجوهای IGMP/MLD ارسالشده توسط پل.
mcast_membership_interval MEMBERSHIP_INTERVAL - تاخیری که پس از آن در صورت عدم دریافت گزارشهای عضویت برای این گروه، پل گروه را ترک میکند.
mcast_stats_enabled MCAST_STATS_ENABLED - فعال کردن (MCAST_STATS_ENABLED > 0) یا غیرفعال کردن (MCAST_STATS_ENABLED == 0) ثبت آمار چندپخشی (IGMP/MLD).
mcast_igmp_version IGMP_VERSION - تنظیم نسخه IGMP.
mcast_mld_version MLD_VERSION - تنظیم نسخه MLD.
nf_call_iptables NF_CALL_IPTABLES - فعال کردن (NF_CALL_IPTABLES > 0) یا غیرفعال کردن (NF_CALL_IPTABLES == 0) قلابهای (hooks) iptables روی پل.
nf_call_ip6tables NF_CALL_IP6TABLES - فعال کردن (NF_CALL_IP6TABLES > 0) یا غیرفعال کردن (NF_CALL_IP6TABLES == 0) قلابهای ip6tables روی پل.
nf_call_arptables NF_CALL_ARPTABLES - فعال کردن (NF_CALL_ARPTABLES > 0) یا غیرفعال کردن (NF_CALL_ARPTABLES == 0) قلابهای arptables روی پل.
mdb_offload_fail_notification MDB_OFFLOAD_FAIL_NOTIFICATION - فعال کردن اعلان شکست آفلود mdb (MDB_OFFLOAD_FAIL_NOTIFICATION > 0) یا غیرفعال کردن آن (MDB_OFFLOAD_FAIL_NOTIFICATION == 0). مقدار پیشفرض 0 است.
- پشتیبانی از نوع MACsec (MACsec Type Support)
- برای
پیوندی از
نوع MACsec
آرگومانهای
اضافی زیر
پشتیبانی
میشوند:
ip link add link DEVICE name NAME type macsec [ [ address <lladdr> ] port PORT | sci SCI ] [ cipher CIPHER_SUITE ] [ icvlen { 8..16 } ] [ encrypt { on | off } ] [ send_sci { on | off } ] [ end_station { on | off } ] [ scb { on | off } ] [ protect { on | off } ] [ replay { on | off } window { 0..2^32-1 } ] [ validate { strict | check | disabled } ] [ encodingsa { 0..3 } ]
address <lladdr> - جزء شناسه سیستم (system identifier) کانال امن را برای این دستگاه MACsec تنظیم میکند.
port PORT - جزء شماره درگاه کانال امن را برای این دستگاه MACsec در بازه 1 تا 65535 (شامل هر دو) تنظیم میکند. اعدادی با پیشوند «0» یا «0x» به ترتیب به عنوان هشتهشتی (octal) و شانزدهشانزدهی (hexadecimal) تفسیر میشوند.
sci SCI - شناسه کانال امن (SCI) را برای این دستگاه MACsec تنظیم میکند. SCI یک عدد 64 بیتی در قالب شانزدهشانزدهی (hexadecimal) است.
cipher CIPHER_SUITE - مجموعه رمز (cipher suite) مورد استفاده را مشخص میکند.
icvlen LENGTH - طول مقدار بررسی یکپارچگی (ICV) را تنظیم میکند.
encrypt on یا encrypt off - تغییر وضعیت بین رمزگذاری احراز هویتشده یا تنها حالت احراز اصالت.
send_sci on یا send_sci off - مشخص میکند که آیا SCI در هر بسته گنجانده شود یا فقط در مواقع ضروری.
end_station on یا end_station off - بیت End Station را تنظیم میکند.
scb on یا scb off - بیت Single Copy Broadcast را تنظیم میکند.
protect on یا protect off - محافظت MACsec را روی دستگاه فعال میکند.
replay on یا replay off - محافظت در برابر بازپخش (replay protection) را روی دستگاه فعال میکند.
window SIZE - اندازه پنجره بازپخش (replay window) را تنظیم میکند.
validate strict یا validate check یا validate disabled - حالت اعتبارسنجی را روی دستگاه تنظیم میکند.
encodingsa AN - ارتباط امن فعال (active secure association) را برای ارسال تنظیم میکند.
- پشتیبانی از نوع VRF (VRF Type Support)
- برای
پیوندی از
نوع VRF
آرگومانهای
اضافی زیر
پشتیبانی
میشوند:
ip link add DEVICE type vrf table TABLE
table شناسه جدول (table id) مرتبط با دستگاه VRF
- پشتیبانی از نوع RMNET (RMNET Type Support)
- برای
پیوندی از
نوع RMNET
آرگومانهای
اضافی زیر
پشتیبانی
میشوند:
ip link add link DEVICE name NAME type rmnet mux_id MUXID
mux_id MUXID - شناسه mux را برای دستگاه rmnet مشخص میکند؛ مقادیر ممکن 1-254 هستند.
- پشتیبانی از نوع XFRM (XFRM Type Support)
- برای
پیوندی از
نوع XFRM
آرگومانهای
اضافی زیر
پشتیبانی
میشوند:
ip link add DEVICE type xfrm dev PHYS_DEV [ if_id IF_ID ] [ external ]
dev PHYS_DEV - رابط فیزیکی زیرین را مشخص میکند که ترافیک تبدیل (transform) از طریق آن ارسال و دریافت میشود.
if_id IF-ID - کلید جستجوی شانزدهشانزدهی (hexadecimal) مورد استفاده برای ارسال ترافیک به و از سیاستهای مشخص xfrm را تعیین میکند. سیاستها باید با همان کلید پیکربندی شوند. در صورت عدم تنظیم، مقدار پیشفرض کلید 0 خواهد بود و با هر سیاستی که به طور مشابه فاقد پیکربندی کلید جستجو باشد مطابقت خواهد داشت.
external - کنترل این دستگاه را خارجی (externally controlled) میکند. این پرچم با گزینههای dev و if_id مانعةالجمع (mutually exclusive) است.
- پشتیبانی از نوع GTP (GTP Type Support)
- برای
پیوندی از
نوع GTP
آرگومانهای
اضافی زیر
پشتیبانی
میشوند:
ip link add DEVICE type gtp role ROLE hsize HSIZE
role ROLE - نقش دستگاه GTP را مشخص میکند، که میتواند sgsn یا ggsn باشد
hsize HSIZE - اندازه جدول درهمسازی (hashtable) را که زمینههای PDP (PDP contexts) را ذخیره میکند، مشخص مینماید
restart_count RESTART_COUNT - شمارنده راهاندازی مجدد (restart counter) نمونه GTP
- پشتیبانی از نوع PFCP (PFCP Type Support)
- برای
پیوندی از
نوع PFCP هیچ
آرگومان
اضافی
پشتیبانی
نمیشود
ip link delete - حذف رابط مجازی (delete virtual link)
- dev DEVICE
- دستگاه مجازی مورد نظر برای انجام عملیات را مشخص میکند.
- group GROUP
- گروهی از رابطهای مجازی را برای حذف مشخص میکند. حذف گروه 0 مجاز نیست زیرا گروه پیشفرض است.
- type TYPE
- نوع دستگاه را مشخص میکند.
ip link set - تغییر ویژگیها و مشخصههای دستگاه (change device attributes)
هشدار: اگر تغییر چندین پارامتر درخواست شود، ip بلافاصله پس از شکست هر یک از تغییرات متوقف میشود. این تنها حالتی است که در آن ip میتواند سیستم را در وضعیتی غیرقابل پیشبینی قرار دهد. راهحل این است که از تغییر همزمان چندین پارامتر در یک فراخوانی ip link set خودداری کنید. اصلاحکنندهٔ change معادل set است.
- dev DEVICE
- DEVICE دستگاه شبکهای که قرار است روی آن عملیات انجام شود را مشخص میکند. هنگام پیکربندی دستگاههای تابع مجازی (VF) در SR-IOV، این کلیدواژه باید دستگاه تابع فیزیکی (PF) مرتبط را مشخص کند.
- group GROUP
- GROUP دارای نقش دوگانه است: اگر هر دو مشخصهٔ group و dev وجود داشته باشند، دستگاه به گروه مشخصشده منتقل میشود. اگر فقط یک گروه مشخص شده باشد، دستور روی تمام دستگاههای موجود در آن گروه اعمال میشود.
- up و down
- وضعیت دستگاه را به UP یا DOWN تغییر میدهد.
- arp on یا arp off
- پرچم NOARP را روی دستگاه تغییر میدهد.
- multicast on یا multicast off
- پرچم MULTICAST را روی دستگاه تغییر میدهد.
- allmulticast on یا allmulticast off
- پرچم ALLMULTI را روی دستگاه تغییر میدهد. هنگامی که فعال باشد، به راهانداز شبکه دستور میدهد تا تمام بستههای چندپخشی را برای پردازش بیشتر از شبکه به هسته تحویل دهد.
- promisc on یا promisc off
- پرچم PROMISC را روی دستگاه تغییر میدهد. هنگامی که فعال باشد، عملکرد بیقید (پرومیسکیوس / promiscuous) دستگاه شبکه را فعال میکند.
- trailers on یا trailers off
- پرچم NOTRAILERS را روی دستگاه تغییر میدهد، توسط لینوکس استفاده نمیشود و برای سازگاری با BSD وجود دارد.
- protodown on یا protodown off
- وضعیت PROTODOWN را روی دستگاه تغییر میدهد. نشان میدهد که خطای پروتکل روی درگاه شناسایی شده است. راهاندازهای سوییچ میتوانند با غیرفعال کردن فیزیکی (phys down) درگاه سوییچ به این خطا واکنش نشان دهند.
- protodown_reason PREASON on یا off
- دلایل PROTODOWN را روی دستگاه تنظیم میکند. نام بیتهای دلیل protodown را میتوان ذیل /etc/iproute2/protodown_reasons.d/ شمرد و فهرست کرد. بیتهای دلایل احتمالی ۰ تا ۳۱ هستند.
- dynamic on یا dynamic off
- پرچم DYNAMIC را روی دستگاه تغییر میدهد. نشان میدهد که در صورت از کار افتادن رابط، نشانی ممکن است تغییر کند (در حال حاضر توسط لینوکس استفاده نمیشود ).
- name NAME
- نام دستگاه را تغییر میدهد. این عملیات در صورتی که دستگاه در حال اجرا باشد یا از قبل نشانیهایی برای آن پیکربندی شده باشد، توصیه نمیشود.
- txqueuelen NUMBER
- txqlen NUMBER
- طول صف ارسال (transmit queue) دستگاه را تغییر میدهد.
- mtu NUMBER
- مقدار MTU دستگاه را تغییر میدهد.
- address LLADDRESS
- نشانی ایستگاه (station address) رابط را تغییر میدهد.
- broadcast LLADDRESS
- brd LLADDRESS
- peer LLADDRESS
- نشانی همهپخشی لایه پیوند یا نشانی همتا (peer address) را در حالتی که رابط POINTOPOINT است تغییر میدهد.
- netns
- { PID | NETNSNAME | NETNSFILE }
دستگاه را به فضای نام شبکهٔ مرتبط با شناسه فرایند PID یا نام NETNSNAME یا فایل NETNSFILE منتقل میکند.برخی دستگاهها مجاز به تغییر فضای نام شبکه نیستند: loopback، bridge، wireless. اینها دستگاههای محلی فضای نام شبکه (network namespace local) هستند. در چنین حالتی، ابزار ip خطای "Invalid argument" را بازمیگرداند. با بررسی پرچم netns-local در خروجی دستور ethtool میتوان متوجه شد که آیا دستگاه به یک فضای نام شبکهٔ منفرد محلی است یا خیر:
ethtool -k DEVICE
برای تغییر فضای نام شبکه دستگاههای بیسیم میتوان از ابزار iw استفاده کرد. اما این ابزار تنها اجازه تغییر فضای نام شبکه را برای دستگاههای فیزیکی و بر اساس شناسه فرایند PID میدهد.
- alias NAME
- یک نام نمادین برای ارجاع آسانتر به دستگاه اختصاص میدهد.
- group GROUP
- گروهی را که دستگاه به آن تعلق دارد مشخص میکند. گروههای موجود در /usr/share/iproute2/group یا /etc/iproute2/group فهرست شدهاند (در صورت وجود، اولویت دارد).
- vf NUM
- یک دستگاه
تابع مجازی
(Virtual Function) را برای
پیکربندی
مشخص
میکند.
دستگاه PF
مرتبط باید
با استفاده
از پارامتر
dev مشخص شود.
mac LLADDRESS - تغییر نشانی ایستگاه برای VF مشخصشده. پارامتر vf باید مشخص شود.vlan VLANID - تغییر VLAN اختصاصیافته برای VF مشخصشده. در صورت مشخص شدن، تمام ترافیک ارسالشده از VF با شناسهٔ VLAN مشخصشده برچسبگذاری میشود. ترافیک ورودی بر اساس شناسهٔ VLAN مشخصشده فیلتر میشود و قبل از ارسال به VF تمام برچسبهای VLAN از آن حذف خواهد شد. تنظیم این پارامتر روی 0 برچسبگذاری و فیلتر کردن VLAN را غیرفعال میکند. پارامتر vf باید مشخص شود.
qos VLAN-QOS - تخصیص بیتهای اولویت VLAN QOS برای برچسب VLAN. در صورت مشخص شدن، تمام برچسبهای VLAN ارسالشده توسط VF شامل بیتهای اولویت مشخصشده در برچسب VLAN خواهند بود. در صورت عدم تعیین، مقدار 0 فرض میشود. هر دو پارامتر vf و vlan باید مشخص شوند. تنظیم همزمان vlan و qos روی 0، برچسبگذاری و فیلتر کردن VLAN را برای VF غیرفعال میکند.
proto VLAN-PROTO - تخصیص پروتکل VLAN برای برچسب VLAN، به صورت 802.1Q یا 802.1ad. تنظیم روی 802.1ad باعث میشود تمام ترافیک ارسالشده از VF با VLAN S-Tag برچسبگذاری شود. تمام برچسبهای VLAN S-Tag از ترافیک ورودی قبل از تحویل به VF حذف خواهند شد. تنظیم روی 802.1ad همچنین امکان الحاق یک برچسب VLAN دیگر را فعال میکند، بنابراین هر دو S-TAG و C-TAG به ترتیب برای ترافیک خروجی/ورودی درج/حذف میشوند. اگر مشخص نشود، مقدار 802.1Q فرض میشود. هر دو پارامتر vf و vlan باید مشخص شوند.
rate TXRATE -- تغییر پهنای باند ارسال مجاز، بر حسب مگابیت بر ثانیه (Mbps)، برای VF مشخصشده. تنظیم این پارامتر روی 0 محدودیت نرخ را غیرفعال میکند. پارامتر vf باید مشخص شود. لطفاً به جای آن از گزینهٔ جدید max_tx_rate در API استفاده کنید.
max_tx_rate TXRATE - تغییر حداکثر پهنای باند ارسال مجاز، بر حسب مگابیت بر ثانیه (Mbps)، برای VF مشخصشده. تنظیم این پارامتر روی 0 محدودیت نرخ را غیرفعال میکند. پارامتر vf باید مشخص شود.
min_tx_rate TXRATE - تغییر حداقل پهنای باند ارسال مجاز، بر حسب مگابیت بر ثانیه (Mbps)، برای VF مشخصشده. حداقل TXRATE همواره باید <= حداکثر TXRATE باشد. تنظیم این پارامتر روی 0 محدودیت نرخ را غیرفعال میکند. پارامتر vf باید مشخص شود.
spoofchk on|off - روشن یا خاموش کردن بررسی جعل بسته برای VF مشخصشده.
query_rss on|off - فعال یا غیرفعال کردن امکان پرسوجوی پیکربندی RSS مربوط به یک VF مشخص. اطلاعات RSS مربوط به VF مانند کلید درهمسازی RSS ممکن است در برخی دستگاهها که این اطلاعات میان VF و PF به اشتراک گذاشته میشود حساس تلقی شود و بنابراین پرسوجوی آن به صورت پیشفرض ممنوع باشد.
state auto|enable|disable - تنظیم وضعیت پیوند مجازی از دید VF مشخصشده. تنظیم روی auto به معنی بازتاب وضعیت پیوند PF است، enable به VF اجازه میدهد تا حتی در صورت قطع بودن پیوند PF با سایر VFهای روی این میزبان ارتباط برقرار کند، disable باعث میشود سختافزار هر بستهای را که توسط VF ارسال میشود دور بیندازد.
trust on|off - معتمد شمردن کاربر VF مشخصشده. این گزینه به کاربر VF اجازه میدهد تا ویژگی خاصی را که ممکن است بر امنیت و/یا کارایی تأثیر بگذارد تنظیم کند (مانند حالت بیقید (پرومیسکیوس / promiscuous) چندپخشی در VF).
node_guid eui64 - پیکربندی شناسه سراسری گره (node GUID) برای VFهای Infiniband.
port_guid eui64 - پیکربندی شناسه سراسری درگاه (port GUID) برای VFهای Infiniband.
- xdp object | pinned | off
- تنظیم (یا
لغو تنظیم)
یک برنامهٔ
BPF مربوط به XDP
("eXpress Data Path") برای
اجرا روی هر
بسته در سطح
راهانداز.
خروجی
دستور ip link
پرچم xdp را
برای
دستگاه
شبکه نشان
خواهد داد.
اگر
راهانداز
پشتیبانی
بومی از XDP
نداشته
باشد، هسته
به گونهٔ
کندتر و
مستقل از
راهانداز
"generic" مربوط
به XDP
بازمیگردد.
در این صورت
خروجی ip link به
جای تنها xdp
عبارت xdpgeneric
را نشان
خواهد داد.
اگر
راهانداز
دارای
پشتیبانی
بومی از XDP
باشد، اما
برنامه تحت
xdpgeneric object | pinned
بارگذاری
شده باشد،
هسته به جای
گونهٔ
بومی، از
گونهٔ generic
مربوط به XDP
استفاده
خواهد کرد.
گزینهٔ xdpdrv
اثر معکوس
دارد و
درخواست
میکند که
پسگرد
خودکار به
گونهٔ generic
مربوط به XDP
غیرفعال
شود و در
صورتی که
راهانداز
از XDP
پشتیبانی
نکند، خطا
بازگردانده
شود. همچنین
xdpdrv تخلیه
بار
سختافزاری
(hardware offloads) را
غیرفعال
میکند.
عبارت xdpoffload
در خروجی ip link
نشان
میدهد که
برنامه به
سختافزار
واگذار شده
است و
همچنین
میتواند
برای
درخواست
حالت "offload"
استفاده
شود؛ درست
مانند xdpgeneric
این گزینه
اجبار
میکند
برنامه
مشخصاً در
سختافزار/سفتافزار
(HW/FW) آداپتور
نصب شود.
off (یا none ) - هر برنامهٔ XDP/BPF متصل فعلی را از دستگاه مشخصشده جدا میکند.
object FILE - یک برنامهٔ XDP/BPF را به دستگاه مشخصشده متصل میکند. FILE به یک فایل BPF ELF (مثلاً تولیدشده توسط LLVM) اشاره دارد که حاوی کد برنامهٔ BPF، مشخصات map و غیره است. اگر قبلاً یک برنامهٔ XDP/BPF به دستگاه متصل شده باشد، خطا ایجاد میشود. اگر در حال حاضر هیچ برنامهٔ XDP/BPF متصل نباشد، دستگاه از XDP پشتیبانی کند و برنامهٔ موجود در فایل BPF ELF از تاییدکننده هسته (kernel verifier) عبور کند، به دستگاه متصل خواهد شد. اگر گزینهٔ -force به ip داده شود، هر برنامهٔ XDP/BPF متصل قبلی به صورت اتمیک بازنویسی میشود و در این حالت خطایی رخ نخواهد داد. اگر هیچ گزینهٔ section داده نشود، نام بخش پیشفرض ("prog") در نظر گرفته میشود، در غیر این صورت نام بخش مشخصشده استفاده خواهد شد. اگر هیچ گزینهٔ verbose داده نشود، گزارش ارزیاب تنها هنگام بروز خطای بارگذاری چاپ میشود. همچنین برای نمونههای استفاده، بخش EXAMPLES را ببینید.
section NAME - نام بخشی را که حاوی کد برنامهٔ BPF است مشخص میکند. اگر هیچ نام بخشی مشخص نشود، نام پیشفرض ("prog") استفاده خواهد شد. این گزینه باید همراه با گزینهٔ object ارسال شود.
program NAME - نام برنامهٔ BPF که باید متصل شود را مشخص میکند. هنگامی که نام برنامه مشخص شده باشد، پارامتر نام بخش نادیده گرفته خواهد شد. این گزینه تنها زمانی کار میکند که iproute2 با پشتیبانی از libbpf ساخته شده باشد.
verbose - در حالت پرحرف عمل میکند. به عنوان مثال، حتی در صورت موفقیت، اگر برنامهای از یک فایل BPF ELF بارگذاری شده باشد، گزارش ارزیاب را چاپ میکند.
pinned FILE - یک برنامهٔ XDP/BPF را به دستگاه مشخصشده متصل میکند. FILE به یک برنامهٔ BPF که از قبل در سیستمفایل BPF پین شده است اشاره دارد. گزینهٔ section در اینجا اعمال نمیشود، اما در غیر این صورت مفاهیم دقیقاً مانند گزینهٔ object است که پیشتر توضیح داده شد.
- master DEVICE
- دستگاه master را برای این دستگاه تنظیم میکند (دستگاه را برده/عضو دستگاه master میکند).
- nomaster
- دستگاه master را لغو میکند (دستگاه را رها/آزاد میکند).
- addrgenmode eui64|none|stable_secret|random
- حالت تولید
نشانی IPv6 را
تنظیم
میکند
eui64 - استفاده از شناسه رابط با قالب اصلاحشده EUI-64
none - غیرفعال کردن تولید خودکار نشانی
stable_secret - تولید شناسه رابط بر اساس مقدار پیشتنظیم در
/proc/sys/net/ipv6/conf/{default,DEVICE}/stable_secretrandom - مانند stable_secret، اما اگر مقداری تنظیم نشده باشد یک کلید محرمانهٔ تصادفی جدید به صورت خودکار تولید میکند
- inet
- پارامترهای
شبکهٔ devconf
مربوط به IPv4
را برای
دستگاه
مشخصشده
تنظیم
میکند. این
پارامترها
مستقیماً
به sysctlهای
رابط IPv4 هسته
نگاشت
میشوند.
forwarding { on | off } - فعال یا غیرفعال کردن هدایت (forwarding) بسته در IPv4 روی دستگاه.proxy_arp, accept_redirects, secure_redirects, send_redirects, shared_media, accept_source_route, bootp_relay, log_martians, arp_filter, disable_xfrm, disable_policy, promote_secondaries, arp_notify, accept_local, src_vmark, proxy_arp_pvlan, route_localnet, bc_forwarding, ignore_routes_with_linkdown, drop_unicast_in_l2_multicast, drop_gratuitous_arp, arp_evict_nocarrier, { on | off } - تغییر وضعیت پارامتر بولی متناظر در شبکه.
rp_filter { 0 | 1 | 2 } - تنظیم فیلتر مسیر معکوس (reverse path filtering).
arp_announce { 0 | 1 | 2 } - تعریف سطوح مختلف محدودیت برای اعلام نشانی IP مبدا محلی از بستههای IP در درخواستهای ARP.
arp_ignore { 0 | 1 | ... | 8 } - تعریف حالتهای مختلف برای پاسخ دادن به درخواستهای ARP که نشانیهای IP مقصد محلی را ترجمه میکنند.
arp_accept { 0 | 1 | 2 } - تعریف رفتار برای فریمهای ARP بیدلیل (gratuitous ARP).
force_igmp_version { 0 | 1 | 2 | 3 } - اجبار نسخهٔ IGMP.
tag TAG - تنظیم برچسب (tag) رابط.
medium_id ID - تنظیم شناسه رسانه (medium ID) رابط.
igmpv2_unsolicited_report_interval INTERVAL
igmpv3_unsolicited_report_interval INTERVAL - تنظیم بازه گزارش ناخواستهٔ پروتکل IGMP بر حسب میلیثانیه.
- link-netnsid
- تنظیم netnsid همتا برای یک رابط فرامرزی بین فضاهای نام شبکه (cross-netns interface)
- type ETYPE TYPE_ARGS
- تغییر تنظیمات مربوط به نوع دستگاه. برای مشاهدهٔ فهرستی از انواع پشتیبانیشده و آرگومانها به توضیحات ip link add در بالا مراجعه کنید. علاوه بر آن، دستکاری تنظیمات برای دستگاههای برده (slave) نیز امکانپذیر است:
- پشتیبانی از دستگاههای متصل به پل (Bridge Slave Support)
- برای
پیوندی با
مستر bridge
آرگومانهای
اضافی زیر
پشتیبانی
میشوند:
ip link set type bridge_slave [ fdb_flush ] [ state STATE ] [ priority PRIO ] [ cost COST ] [ guard { on | off } ] [ hairpin { on | off } ] [ fastleave { on | off } ] [ root_block { on | off } ] [ learning { on | off } ] [ flood { on | off } ] [ proxy_arp { on | off } ] [ proxy_arp_wifi { on | off } ] [ mcast_router MULTICAST_ROUTER ] [ mcast_fast_leave { on | off} ] [ bcast_flood { on | off } ] [ mcast_flood { on | off } ] [ mcast_to_unicast { on | off } ] [ group_fwd_mask MASK ] [ neigh_suppress { on | off } ] [ neigh_vlan_suppress { on | off } ] [ neigh_forward_grat { on | off } ] [ vlan_tunnel { on | off } ] [ isolated { on | off } ] [ locked { on | off } ] [ mab { on | off } ] [ backup_port DEVICE ] [ nobackup_port ] [ backup_nhid NHID ]
fdb_flush - پاکسازی ورودیهای پویای FDB اسلیو پل (bridge slave).
state STATE - تنظیم وضعیت درگاه. STATE عددی است که وضعیتهای زیر را نشان میدهد: 0 (غیرفعال / disabled)، 1 (شنود / listening)، 2 (یادگیری / learning)، 3 (هدایت / forwarding)، 4 (مسدود / blocking).
priority PRIO - تنظیم اولویت درگاه (مقادیر مجاز بین 0 تا 63، شامل هر دو است).
cost COST - تنظیم هزینه درگاه (مقادیر مجاز بین 1 تا 65535، شامل هر دو است).
guard { on | off } - مسدود کردن بستههای BPDU ورودی روی این درگاه.
hairpin { on | off } - فعالسازی حالت hairpin روی این درگاه. این کار اجازه میدهد بستههای ورودی به این درگاه به خود آن بازتاب داده شوند.
fastleave { on | off } - فعالسازی خروج سریع چندپخشی (multicast fast leave) روی این درگاه.
root_block { on | off } - جلوگیری از تبدیل شدن این درگاه به درگاه ریشه (root port) پل.
learning { on | off } - اجازه یادگیری آدرس MAC روی این درگاه.
flood { on | off } - باز کردن درگاه به صورت سیلآسا (flood)، یعنی تمام فریمهای تکپخشی (unicast) به این درگاه نیز هدایت شوند. نیازمند خاموش بودن proxy_arp و proxy_arp_wifi است.
proxy_arp { on | off } - فعالسازی ARP نیابتی (proxy ARP) روی این درگاه.
proxy_arp_wifi { on | off } - فعالسازی ARP نیابتی روی این درگاه مطابق با نیازمندیهای توسعهیافته بر اساس مشخصات IEEE 802.11 و Hotspot 2.0.
mcast_router MULTICAST_ROUTER - پیکربندی این درگاه برای داشتن مسیریابهای چندپخشی متصل. درگاهی که مسیریاب چندپخشی دارد، تمام ترافیک چندپخشی را دریافت خواهد کرد. MULTICAST_ROUTER میتواند یکی از مقادیر زیر باشد: 0 برای غیرفعال کردن مسیریابهای چندپخشی روی این درگاه، 1 برای اینکه سیستم حضور مسیریابها را تشخیص دهد (این حالت پیشفرض است)، 2 برای فعالسازی دائمی هدایت ترافیک چندپخشی روی این درگاه یا 3 برای فعالسازی موقت مسیریابهای چندپخشی روی این درگاه، بدون وابستگی به پرسوجوهای ورودی.
mcast_fast_leave { on | off } - این گزینه مترادفی برای گزینه fastleave در بالا است.
bcast_flood { on | off } - هدایت سیلآسای ترافیک پخشی (broadcast flooding) را روی درگاه مشخصشده کنترل میکند. بهطور پیشفرض این پرچم روشن است.
mcast_flood { on | off } - کنترل میکند که آیا درگاه مشخصشده ترافیک چندپخشی را که هیچ مدخل MDB برای آن وجود ندارد به صورت سیلآسا هدایت کند یا خیر. بهطور پیشفرض این پرچم روشن است.
mcast_to_unicast { on | off } - کنترل میکند که آیا درگاه مشخصشده بستهها را به جای چندپخشی با استفاده از تکپخشی (unicast) تکثیر کند یا خیر. بهطور پیشفرض این پرچم خاموش است.
group_fwd_mask MASK - تنظیم ماسک هدایت گروهی (group forward mask). این ماسک بیتی است که برای تصمیمگیری در مورد هدایت فریمهای ورودی با مقصد آدرسهای link-local اعمال میشود؛ یعنی آدرسهایی به شکل 01:80:C2:00:00:0X (پیشفرض 0 است، یعنی پل هیچ فریم link-local ورودی به این درگاه را هدایت نمیکند).
neigh_suppress { on | off } - کنترل میکند که آیا پروکسی و مهار کشف همسایه (arp و nd) روی درگاه فعال باشد یا خیر. بهطور پیشفرض این پرچم خاموش است.
neigh_vlan_suppress { on | off } - کنترل میکند که آیا پروکسی و مهار کشف همسایه (arp و nd) به ازای هر VLAN روی درگاه فعال باشد یا خیر. در صورت روشن بودن، گزینه bridge link neigh_suppress بیاثر خواهد بود و وضعیت به ازای هر VLAN با استفاده از گزینه bridge vlan neigh_suppress تنظیم میشود. بهطور پیشفرض این پرچم خاموش است.
neigh_forward_grat { on | off } - کنترل میکند که آیا بستههای gratuitous ARP و بستههای ناخواستهٔ اعلان همسایه (unsolicited Neighbor Advertisement) هنگام فعال بودن مهار همسایه روی درگاه هدایت شوند یا خیر. بهطور پیشفرض این پرچم خاموش است، به این معنی که بستههای gratuitous ARP و NA ناخواسته در هنگام فعال بودن مهار همسایه مهار خواهند شد. تنظیم این پرچم روی on اجازه میدهد این بستهها حتی در صورت فعال بودن مهار همسایه نیز هدایت شوند.
vlan_tunnel { on | off } - کنترل میکند که آیا نگاشت vlan به تونل روی درگاه فعال باشد یا خیر. بهطور پیشفرض این پرچم خاموش است.
locked { on | off } - کنترل میکند که آیا درگاه قفل است یا خیر. در حالت قفل، فریمهای غیر link-local دریافتی از درگاه دور ریخته میشوند مگر اینکه یک مدخل FDB با آدرس MAC مبدأ به این درگاه اشاره کند. کاربرد معمول آن در IEEE 802.1X است که در آن میزبانها میتوانند با تبادل فریمهای EAPOL با یک احراز هویتکننده (authenticator)، خود را احراز هویت کنند. پس از تکمیل احراز هویت، صفحه کنترل فضای کاربری میتواند یک مدخل FDB منطبق نصب کند تا اجازه دهد ترافیک میزبان توسط پل هدایت شود. هنگامی که یادگیری (learning) روی یک درگاه قفلشده فعال است، گزینه پل no_linklocal_learn باید روشن باشد تا از یادگیری پل از فریمهای EAPOL دریافتی جلوگیری شود. بهطور پیشفرض این پرچم خاموش است.
mab { on | off } - کنترل میکند که آیا دور زدن احراز هویت مک (MAC Authentication Bypass - MAB) روی درگاه فعال است یا خیر. MAB فقط میتواند روی درگاه قفلشدهای که یادگیری روی آن فعال است، فعال شود. در صورت فعال بودن، مدخلهای FDB از ترافیک دریافتی یاد گرفته میشوند و پرچم FDB با عنوان "locked" تنظیم میگردد. این پرچم تنها توسط هسته قابل تنظیم است و نشان میدهد که مدخل FDB نمیتواند برای احراز هویت میزبان مربوطه استفاده شود. فضای کاربر میتواند با جایگزین کردن مدخل FDB و پاک کردن پرچم "locked" در FDB، تصمیم به احراز هویت میزبان بگیرد. مدخلهای FDB قفلشده میتوانند به درگاههای قفلنشده (مجاز) جابهجا شوند (roam کنند) که در این حالت پرچم "locked" پاک میشود. مدخلهای FDB صرفنظر از فعال بودن یا نبودن MAB نمیتوانند به درگاههای قفلشده جابهجا شوند. بنابراین، مدخلهای FDB قفلشده تنها در صورتی ایجاد میشوند که مدخل FDB با {MAC, VID} دادهشده از قبل وجود نداشته باشد. این رفتار مانع از آن میشود که میزبانهای احراز هویتنشده ترافیک مقصود میزبانهای از قبل احراز هویتشده را مختل کنند. مدخلهای FDB قفلشده از نظر هدایت و انقضای زمان (aging) مانند مدخلهای پویای معمولی رفتار میکنند. بهطور پیشفرض این پرچم خاموش است.
backup_port DEVICE - در صورتی که درگاه حامل (carrier) را از دست بدهد، تمام ترافیک به درگاه پشتیبان (backup port) پیکربندیشده تغییر مسیر مییابد.
nobackup_port - درگاه پشتیبان پیکربندیشده فعلی را حذف میکند.
backup_nhid NHID - شناسه شیء nexthop در FDB (به ip-nexthop(8) مراجعه کنید) برای پیوست شدن به بستههایی که به درگاه پشتیبان با نگاشت تونل VLAN فعال (از طریق گزینه vlan_tunnel) هدایت میشوند. تنظیم مقدار 0 (پیشفرض) این اثر را دارد که هیچ شناسهای پیوست نمیشود.
- پشتیبانی از اسلیو بوند (Bond Slave Support)
- برای
پیوندی با
مستر bond
آرگومانهای
اضافی زیر
پشتیبانی
میشوند:
ip link set type bond_slave [ queue_id ID ] [ prio PRIORITY ]
queue_id ID - تنظیم شناسه صف (queue ID) اسلیو (یک مقدار ۱۶ بیتی بدون علامت).
prio PRIORITY - تنظیم اولویت اسلیو برای انتخاب مجدد اسلیو فعال در هنگام failover (یک مقدار ۳۲ بیتی علامتدار). این گزینه فقط برای حالتهای active-backup(1)، balance-tlb (5) و balance-alb (6) معتبر است.
actor_port_prio PRIORITY - تنظیم اولویت درگاه actor در پروتکل 802.3ad اسلیو برای منطق انتخاب تجمیع 802.3ad در هنگام failover (یک مقدار ۱۶ بیتی بدون علامت). این گزینه فقط برای حالت 802.3ad (4) معتبر است.
- پشتیبانی از MACVLAN و MACVTAP (MACVLAN and MACVTAP Support)
- تغییر
فهرست macaddrهای
مجاز برای
پیوند در
حالت source.
ip link set type { macvlan | macvap } [ macaddr COMMAND MACADDR ... ]
دستورات:
add - افزودن MACADDR به فهرست مجازset - جایگزینی فهرست مجاز
del - حذف MACADDR از فهرست مجاز
flush - پاکسازی تمام فهرست مجاز
بهروزرسانی طول صف همگانی/چندپخشی (broadcast/multicast).
ip link set type { macvlan | macvap } [ bcqueuelen LENGTH ] [ bclim LIMIT ]
bcqueuelen LENGTH - تنظیم طول صف RX مورد استفاده برای پردازش بستههای همگانی و چندپخشی. LENGTH باید یک عدد صحیح مثبت در محدوده [0-4294967295] باشد. تنظیم طول روی 0 عملاً تمام ترافیک همگانی/چندپخشی را دور میریزد (drop میکند). در صورت عدم تعیین، مقدار پیشفرض گرداننده macvlan (مقدار 1000) استفاده میشود. توجه داشته باشید که تمام macvlanهایی که از همان دستگاه زیربنایی مشترک استفاده میکنند از یک صف مشترک استفاده مینمایند. پارامتر در اینجا یک «request» (درخواست) است، طول صف واقعی مورد استفاده حداکثر طولی خواهد بود که هر یک از رابطهای macvlan درخواست کردهاند. هنگام فهرست کردن پارامترهای دستگاه، هم پارامتر bcqueuelen و هم مقدار bcqueuelen عملاً استفادهشده فهرست میشوند تا به درک بهتر کاربر از این تنظیم کمک کنند.bclim LIMIT - تنظیم آستانه برای صفبندی همگانی. LIMIT باید یک عدد صحیح ۳۲ بیتی باشد. تنظیم این مقدار روی -1 صفبندی همگانی را کاملاً غیرفعال میکند. در غیر این صورت، اگر تعداد دستگاههایی که از آن استفاده میکنند بیشتر از مقدار دادهشده باشد، یک آدرس چندپخشی به عنوان همگانی صفبندی خواهد شد.
- پشتیبانی از درگاه کاربری DSA (DSA user port support)
- برای
پیوندی که
نوع درگاه
کاربری DSA را
دارد،
آرگومانهای
اضافی زیر
پشتیبانی
میشوند:
ip link set type dsa [ conduit DEVICE ]
conduit DEVICE - تغییر conduit مربوط به DSA (رابط شبکه میزبان) که مسئول مدیریت ترافیک خاتمهیافته محلی برای درگاه کاربری سوئیچ DSA دادهشده است. برای توضیح اینکه کدام رابطهای شبکه برای خدمت به عنوان رابطهای conduit این درگاه کاربری مناسب هستند، لطفاً ببینید:
https://docs.kernel.org/networking/dsa/configuration.html#affinity-of-user-ports-to-cpu-ports
و همچنین آنچه توسط گرداننده در حال استفاده پشتیبانی میشود.master DEVICE - این یک مترادف برای "conduit" است.
ip link show - نمایش مشخصهها و ویژگیهای دستگاه (display device attributes)
- dev NAME (default)
- NAME دستگاه شبکه را برای نمایش مشخص میکند.
- group GROUP
- GROUP مشخص میکند که کدام گروه از دستگاهها نمایش داده شوند.
- up
- فقط رابطهای فعال (در حال اجرا) را نمایش میدهد.
- down
- فقط رابطهای غیرفعال (غیر در حال اجرا) را نمایش میدهد.
- master DEVICE
- DEVICE دستگاه اصلی (master) را که دستگاههای زیرمجموعه آن باید نمایش داده شوند مشخص میکند.
- vrf NAME
- NAME نمونه VRF را که دستگاههای زیرمجموعه آن باید نمایش داده شوند مشخص میکند.
- type TYPE
- TYPE نوع
دستگاهها
را برای
نمایش مشخص
میکند.
توجه داشته باشید که نام نوع با فهرست انواع پشتیبانیشده بررسی نمیشود - بلکه همانطور که هست به هسته ارسال میشود. بعداً در صورتی که هسته قبلاً فیلتر نکرده باشد، از آن برای فیلتر کردن فهرست رابطهای برگشتی از طریق مقایسه با مشخصه مربوطه استفاده میشود. بنابراین هر رشتهای پذیرفته میشود، اما ممکن است به خروجی خالی منجر شود.
- nomaster
- فقط دستگاههای فاقد دستگاه اصلی (master) را نمایش میدهد.
- novf
- فقط دستگاههای فاقد اطلاعات VF (توابع مجازی) را نمایش میدهد.
ip link xstats - نمایش آمار تفصیلی و گسترشیافته (display extended statistics)
- type TYPE
- TYPE نوع دستگاهها را برای نمایش آمار تفصیلی و گسترشیافته مشخص میکند.
ip link afstats - نمایش آمار مختص خانواده پروتکل (display address-family specific statistics)
- dev DEVICE
- DEVICE دستگاه را برای نمایش آمار مختص خانواده پروتکل مشخص میکند.
ip link help - نمایش راهنمای دستور (display help)
TYPE مشخص میکند که راهنمای کدام نوع پیوند نمایش داده شود.
GROUP
میتواند یک عدد یا یک رشته از /usr/share/iproute2/group یا /etc/iproute2/group باشد که میتوان آن را به صورت دستی پر کرد و در صورت وجود اولویت دارد.
مثالها (EXAMPLES)
ip link show
ip link show type bridge
ip link show type vlan
ip link show master br0
ip link set dev ppp0 mtu 1400
ip link add link eth0 name eth0.10 type vlan id 10
ip link delete dev eth0.10
ip link help gre
ip link add name tun1 type ipip remote 192.168.1.1 local 192.168.1.2 ttl 225 encap gue encap-sport auto encap-dport 5555 encap-csum encap-remcsum
ip link set dev eth0 xdp obj prog.o
ip -force link set dev eth0 xdp obj prog.o sec foo
ip -force link set dev eth0 xdp pinned /sys/fs/bpf/foo
ip link set dev eth0 xdp off
ip link add link wpan0 lowpan0 type lowpan
ip link add dev ip6erspan11 type ip6erspan seq key 102 local fc00:100::2 remote fc00:100::1 erspan_ver 2 erspan_dir ingress erspan_hwid 17
ip link set dev swp0 type dsa conduit eth1
همچنین ببینید (SEE ALSO)
نویسندگان (AUTHORS)
صفحه راهنمای اصلی توسط Michail Litvak <mci@owl.openwall.com>
| 13 Dec 2012 | iproute2 |