blob: 8c7cffa1cc30c1fa601a0ad632f563d61184e957 [file] [log] [blame]
Junxiao Shi6c135622016-11-21 14:30:33 +00001nfdc-route
2==========
3
4SYNOPSIS
5--------
Junxiao Shi1d62e622017-03-08 22:39:28 +00006| nfdc route [list [[nexthop] <FACEID|FACEURI>] [origin <ORIGIN>]]
7| nfdc route show [prefix] <PREFIX>
Davide Pesaventod2147442018-02-19 23:58:17 -05008| nfdc route add [prefix] <PREFIX> [nexthop] <FACEID|FACEURI> [origin <ORIGIN>]
9| [cost <COST>] [no-inherit] [capture] [expires <EXPIRATION-MILLIS>]
Junxiao Shi1d62e622017-03-08 22:39:28 +000010| nfdc route remove [prefix] <PREFIX> [nexthop] <FACEID|FACEURI> [origin <ORIGIN>]
11| nfdc fib [list]
Junxiao Shi6c135622016-11-21 14:30:33 +000012
13DESCRIPTION
14-----------
15In NFD, the routing information base (RIB) stores static or dynamic routing information
16registered by applications, operators, and NFD itself.
17Each *route* in the RIB indicates that contents under a name prefix may be available via a nexthop.
18A route contains a name prefix, a nexthop face, the origin, a cost, and a set of route inheritance flags;
19refer to NFD Management protocol for more information.
20
Junxiao Shi1d62e622017-03-08 22:39:28 +000021The **nfdc route list** command lists RIB routes, optionally filtered by nexthop and origin.
Junxiao Shi6c135622016-11-21 14:30:33 +000022
Junxiao Shi1d62e622017-03-08 22:39:28 +000023The **nfdc route show** command shows RIB routes at a specified name prefix.
Junxiao Shi6c135622016-11-21 14:30:33 +000024
Junxiao Shi918e5d42017-02-25 03:58:21 +000025The **nfdc route add** command requests to add a route.
Junxiao Shi6c135622016-11-21 14:30:33 +000026If a route with the same prefix, nexthop, and origin already exists,
Junxiao Shi918e5d42017-02-25 03:58:21 +000027it is updated with the specified cost, route inheritance flags, and expiration period.
28This command returns when the request has been accepted, but does not wait for RIB update completion.
Eric Newberryd656aff2020-04-03 00:30:38 -070029If no face matching the specified URI is found, nfdc will attempt to implicitly create a face with
30this URI before adding the route.
Junxiao Shi6c135622016-11-21 14:30:33 +000031
Junxiao Shi084b7952017-02-26 22:00:53 +000032The **nfdc route remove** command removes a route with matching prefix, nexthop, and origin.
Junxiao Shi6c135622016-11-21 14:30:33 +000033
Junxiao Shi1d62e622017-03-08 22:39:28 +000034The **nfdc fib list** command shows the forwarding information base (FIB),
35which is calculated from RIB routes and used directly by NFD forwarding.
36
Junxiao Shi6c135622016-11-21 14:30:33 +000037OPTIONS
38-------
Junxiao Shi918e5d42017-02-25 03:58:21 +000039<PREFIX>
40 Name prefix of the route.
Junxiao Shi6c135622016-11-21 14:30:33 +000041
Junxiao Shi918e5d42017-02-25 03:58:21 +000042<FACEID>
43 Numerical identifier of the face.
44 It is displayed in the output of **nfdc face list** and **nfdc face create** commands.
Junxiao Shi6c135622016-11-21 14:30:33 +000045
Junxiao Shi918e5d42017-02-25 03:58:21 +000046<FACEURI>
47 An URI representing the remote endpoint of a face.
Junxiao Shi084b7952017-02-26 22:00:53 +000048 In **nfdc route add** command, it must uniquely match an existing face.
49 In **nfdc route remove** command, it must match one or more existing faces.
Junxiao Shi918e5d42017-02-25 03:58:21 +000050
51<ORIGIN>
52 Origin of the route, i.e. who is announcing the route.
53 The default is 255, indicating a static route.
54
55<COST>
Junxiao Shi6c135622016-11-21 14:30:33 +000056 The administrative cost of the route.
57 The default is 0.
58
Junxiao Shi918e5d42017-02-25 03:58:21 +000059no-inherit
60 Unset CHILD_INHERIT flag in the route.
61
62capture
63 Set CAPTURE flag in the route.
64
65<EXPIRATION-MILLIS>
Junxiao Shi6c135622016-11-21 14:30:33 +000066 Expiration time of the route, in milliseconds.
67 When the route expires, NFD removes it from the RIB.
68 The default is infinite, which keeps the route active until the nexthop face is destroyed.
69
Junxiao Shi918e5d42017-02-25 03:58:21 +000070EXIT CODES
71----------
Junxiao Shi918e5d42017-02-25 03:58:21 +0000720: Success
Junxiao Shi6c135622016-11-21 14:30:33 +000073
Junxiao Shi918e5d42017-02-25 03:58:21 +0000741: An unspecified error occurred
Junxiao Shi6c135622016-11-21 14:30:33 +000075
Junxiao Shi918e5d42017-02-25 03:58:21 +0000762: Malformed command line
77
Junxiao Shi084b7952017-02-26 22:00:53 +0000783: Face not found
Junxiao Shi918e5d42017-02-25 03:58:21 +000079
Junxiao Shi084b7952017-02-26 22:00:53 +0000804: FaceUri canonization failed
Junxiao Shi918e5d42017-02-25 03:58:21 +000081
825: Ambiguous: multiple matching faces are found (**nfdc route add** only)
Junxiao Shi6c135622016-11-21 14:30:33 +000083
Junxiao Shi1d62e622017-03-08 22:39:28 +0000846: Route not found (**nfdc route list** and **nfdc route show** only)
85
Junxiao Shi0e13e1e2018-01-22 08:29:12 +000086EXAMPLES
87--------
88nfdc route list
89 List all routes.
90
91nfdc route list nexthop 300
92 List routes whose nexthop is face 300.
93
94nfdc route list origin static
95 List static routes.
96
97nfdc route show prefix /localhost/nfd
98 List routes with name prefix "/localhost/nfd".
99
100nfdc route add prefix /ndn nexthop 300 cost 100
101 Add a route with prefix "/ndn" toward face 300, with administrative cost 100.
102
103nfdc route add prefix / nexthop udp://router.example.net
104 Add a route with prefix "/" toward a face with the specified remote FaceUri.
105
106nfdc route remove prefix /ndn nexthop 300 origin static
107 Remove the route whose prefix is "/ndn", nexthop is face 300, and origin is "static".
108
Junxiao Shi6c135622016-11-21 14:30:33 +0000109SEE ALSO
110--------
111nfd(1), nfdc(1)