diff options
author | Lorenzo Colitti <lorenzo@google.com> | 2017-11-24 04:38:29 +0000 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2017-11-24 04:38:29 +0000 |
commit | 2d868b48b2f313deb4853e8ac5047d05132969c5 (patch) | |
tree | 4a56d9683737ec68d8f0e5615abfea118eec6426 /man/man8/ip-vrf.8 | |
parent | 1934149f47ee4dfe2b22258c2e18f55a510b5889 (diff) | |
parent | ff27a837e601b1f0331b4700c167107b38475e31 (diff) | |
download | platform_external_iproute2-2d868b48b2f313deb4853e8ac5047d05132969c5.tar.gz platform_external_iproute2-2d868b48b2f313deb4853e8ac5047d05132969c5.tar.bz2 platform_external_iproute2-2d868b48b2f313deb4853e8ac5047d05132969c5.zip |
Merge changes Id0db30f6,I117dcabd,If21f95e2,I42c1ebfa am: 550751fdb7 am: ef18ea8cd8android-wear-9.0.0_r9android-wear-9.0.0_r8android-wear-9.0.0_r7android-wear-9.0.0_r6android-wear-9.0.0_r5android-wear-9.0.0_r4android-wear-9.0.0_r3android-wear-9.0.0_r23android-wear-9.0.0_r22android-wear-9.0.0_r21android-wear-9.0.0_r20android-wear-9.0.0_r2android-wear-9.0.0_r19android-wear-9.0.0_r18android-wear-9.0.0_r17android-wear-9.0.0_r16android-wear-9.0.0_r15android-wear-9.0.0_r14android-wear-9.0.0_r13android-wear-9.0.0_r12android-wear-9.0.0_r11android-wear-9.0.0_r10android-wear-9.0.0_r1android-p-preview-3android-p-preview-2android-9.0.0_r47android-9.0.0_r46android-9.0.0_r45android-9.0.0_r44android-9.0.0_r43android-9.0.0_r42android-9.0.0_r41android-9.0.0_r40android-9.0.0_r39android-9.0.0_r38android-9.0.0_r37android-9.0.0_r36android-9.0.0_r35android-9.0.0_r34android-9.0.0_r33android-9.0.0_r32android-9.0.0_r31android-9.0.0_r30android-9.0.0_r22android-9.0.0_r21android-9.0.0_r20android-9.0.0_r19android-9.0.0_r16android-9.0.0_r12android-9.0.0_r11pie-qpr3-s1-releasepie-qpr3-releasepie-qpr3-b-releasepie-qpr2-releasepie-qpr1-s3-releasepie-qpr1-s2-releasepie-qpr1-s1-releasepie-qpr1-releasepie-dr1-releasepie-dr1-devpie-devpie-b4s4-releasepie-b4s4-dev
am: ff27a837e6
Change-Id: I9bbf3abcb11c1f81c33de67dbe8ea88898fe8fa5
Diffstat (limited to 'man/man8/ip-vrf.8')
-rw-r--r-- | man/man8/ip-vrf.8 | 99 |
1 files changed, 99 insertions, 0 deletions
diff --git a/man/man8/ip-vrf.8 b/man/man8/ip-vrf.8 new file mode 100644 index 00000000..18789339 --- /dev/null +++ b/man/man8/ip-vrf.8 @@ -0,0 +1,99 @@ +.TH IP\-VRF 8 "7 Dec 2016" "iproute2" "Linux" +.SH NAME +ip-vrf \- run a command against a vrf +.SH SYNOPSIS +.sp +.ad l +.in +8 +.ti -8 +.B ip +.B vrf +.RI " { " COMMAND " | " +.BR help " }" +.sp + +.ti -8 +.BR "ip vrf show" +.RI "[ " NAME " ]" + +.ti -8 +.BR "ip vrf identify" +.RI "[ " PID " ]" + +.ti -8 +.BR "ip vrf pids" +.I NAME + +.ti -8 +.BR "ip vrf exec " +.RI "[ " NAME " ] " command ... + +.SH DESCRIPTION +A VRF provides traffic isolation at layer 3 for routing, similar to how a +VLAN is used to isolate traffic at layer 2. Fundamentally, a VRF is a separate +routing table. Network devices are associated with a VRF by enslaving the +device to the VRF. At that point network addresses assigned to the device are +local to the VRF with host and connected routes moved to the table associated +with the VRF. + +A process can specify a VRF using several APIs -- binding the socket to the +VRF device using SO_BINDTODEVICE, setting the VRF association using +IP_UNICAST_IF or IPV6_UNICAST_IF, or specifying the VRF for a specific message +using IP_PKTINFO or IPV6_PKTINFO. + +By default a process is not bound to any VRF. An association can be set +explicitly by making the program use one of the APIs mentioned above or +implicitly using a helper to set SO_BINDTODEVICE for all IPv4 and IPv6 +sockets (AF_INET and AF_INET6) when the socket is created. This ip-vrf command +is a helper to run a command against a specific VRF with the VRF association +inherited parent to child. + +.TP +.B ip vrf show [ NAME ] - Show all configured VRF +.sp +This command lists all VRF and their corresponding table ids. If NAME is +given, then only that VRF and table id is shown. The latter command is +useful for scripting where the table id for a VRF is needed. + +.TP +.B ip vrf exec [ NAME ] cmd ... - Run cmd against the named VRF +.sp +This command allows applications that are VRF unaware to be run against +a VRF other than the default VRF (main table). A command can be run against +the default VRF by passing the "default" as the VRF name. This is useful if +the current shell is associated with another VRF (e.g, Management VRF). + +.TP +.B ip vrf identify [PID] - Report VRF association for process +.sp +This command shows the VRF association of the specified process. If PID is +not specified then the id of the current process is used. + +.TP +.B ip vrf pids NAME - Report processes associated with the named VRF +.sp +This command shows all process ids that are associated with the given +VRF. + +.SH CAVEATS +This command requires a kernel compiled with CGROUPS and CGROUP_BPF enabled. + +The VRF helper *only* affects network layer sockets. + +.SH EXAMPLES +.PP +ip vrf exec red ssh 10.100.1.254 +.RS +Executes ssh to 10.100.1.254 against the VRF red table. +.RE + +.SH SEE ALSO +.br +.BR ip (8), +.BR ip-link (8), +.BR ip-address (8), +.BR ip-route (8), +.BR ip-neighbor (8) + +.SH AUTHOR +Original Manpage by David Ahern |