A router is a logical component that forwards data packets between networks. It also provides Layer 3 and NAT forwarding to provide external network access for servers on project networks.
Network v2
Add a port to a router
openstack router add port
<router>
<port>
<router>
Router to which port will be added (name or ID)
<port>
Port to be added (name or ID)
Add a subnet to a router
openstack router add subnet
<router>
<subnet>
<router>
Router to which subnet will be added (name or ID)
<subnet>
Subnet to be added (name or ID)
Create new router
openstack router create
[--project <project> [--project-domain <project-domain>]]
[--enable | --disable]
[--distributed | --centralized]
[--ha | --no-ha]
[--description <description>]
[--availability-zone-hint <availability-zone>]
[--tag <tag> | --no-tag]
<name>
--project
<project>
¶Owner’s project (name or ID)
--project-domain
<project-domain>
¶Domain the project belongs to (name or ID). This can be used in case collisions between project names exist.
--enable
¶Enable router (default)
--disable
¶Disable router
--distributed
¶Create a distributed router
The default router type (distributed vs centralized) is determined by a
configuration setting in the OpenStack deployment. Since we are unable
to know that default wihtout attempting to actually create a router it
is suggested to use either --distributed
or --centralized
in situations where multiple cloud deployments may be used.
--centralized
¶Create a centralized router
See the note in --distributed
regarding the default used when
creating a new router.
--ha
¶Create a highly available router
--no-ha
¶Create a legacy router
--description
<description>
¶Set router description
--availability-zone-hint
<availability-zone>
¶Availability Zone in which to create this router (Router Availability Zone extension required, repeat option to set multiple availability zones)
--tag
<tag>
¶Tag to be added to the router (repeat option to set multiple tags)
--no-tag
¶No tags associated with the router
<name>
New router name
Delete router(s)
openstack router delete
<router> [<router> ...]
<router>
Router(s) to delete (name or ID)
List routers
openstack router list
[--name <name>]
[--enable | --disable]
[--long]
[--project <project> [--project-domain <project-domain>]]
[--agent <agent-id>]
[--tags <tag>[,<tag>,...]] [--any-tags <tag>[,<tag>,...]]
[--not-tags <tag>[,<tag>,...]] [--not-any-tags <tag>[,<tag>,...]]
--agent
<agent-id>
¶List routers hosted by an agent (ID only)
--long
¶List additional fields in output
--name
<name>
¶List routers according to their name
--enable
¶List enabled routers
--disable
¶List disabled routers
--project
<project>
¶List routers according to their project (name or ID)
--project-domain
<project-domain>
¶Domain the project belongs to (name or ID). This can be used in case collisions between project names exist.
List routers which have all given tag(s)
List routers which have any given tag(s)
Exclude routers which have all given tag(s)
Exclude routers which have any given tag(s)
Remove a port from a router
openstack router remove port
<router>
<port>
<router>
Router from which port will be removed (name or ID)
<port>
Port to be removed and deleted (name or ID)
Remove a subnet from a router
openstack router remove subnet
<router>
<subnet>
<router>
Router from which subnet will be removed (name or ID)
<subnet>
Subnet to be removed (name or ID)
Set router properties
openstack router set
[--name <name>]
[--enable | --disable]
[--distributed | --centralized]
[--description <description>]
[--route destination=<subnet>,gateway=<ip-address> | --no-route]
[--ha | --no-ha]
[--external-gateway <network> [--enable-snat|--disable-snat] [--fixed-ip subnet=<subnet>,ip-address=<ip-address>]]
[--tag <tag>] [--no-tag]
<router>
--name
<name>
¶Set router name
--enable
¶Enable router
--disable
¶Disable router
--distributed
¶Set router to distributed mode (disabled router only)
--centralized
¶Set router to centralized mode (disabled router only)
--description
<description>
¶Set router description
--route
destination=<subnet>,gateway=<ip-address>
¶Routes associated with the router destination: destination subnet (in CIDR notation) gateway: nexthop IP address (repeat option to set multiple routes)
--no-route
¶Clear routes associated with the router. Specify both –route and –no-route to overwrite current value of route.
--ha
¶Set the router as highly available (disabled router only)
--no-ha
¶Clear high availablability attribute of the router (disabled router only)
--external-gateway
<network>
¶External Network used as router’s gateway (name or ID)
--enable-snat
¶Enable Source NAT on external gateway
--disable-snat
¶Disable Source NAT on external gateway
--fixed-ip
subnet=<subnet>,ip-address=<ip-address>
¶Desired IP and/or subnet (name or ID) on external gateway: subnet=<subnet>,ip-address=<ip-address> (repeat option to set multiple fixed IP addresses)
--tag
<tag>
¶Tag to be added to the router (repeat option to set multiple tags)
--no-tag
¶Clear tags associated with the router. Specify both –tag and –no-tag to overwrite current tags
<router>
Router to modify (name or ID)
Display router details
openstack router show
<router>
<router>
Router to display (name or ID)
Unset router properties
openstack router unset
[--route destination=<subnet>,gateway=<ip-address>]
[--external-gateway]
[--tag <tag> | --all-tag]
<router>
--route
destination=<subnet>,gateway=<ip-address>
¶Routes to be removed from the router destination: destination subnet (in CIDR notation) gateway: nexthop IP address (repeat option to unset multiple routes)
--external-gateway
¶Remove external gateway information from the router
--tag
<tag>
¶Tag to be removed from the router (repeat option to remove multiple tags)
--all-tag
¶Clear all tags associated with the router
<router>
Router to modify (name or ID)
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.