router

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

router add port

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)

router add subnet

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)

router create

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

router delete

Delete router(s)

openstack router delete
    <router> [<router> ...]
<router>

Router(s) to delete (name or ID)

router list

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.

--tags <tag>[,<tag>,...]

List routers which have all given tag(s)

--any-tags <tag>[,<tag>,...]

List routers which have any given tag(s)

--not-tags <tag>[,<tag>,...]

Exclude routers which have all given tag(s)

--not-any-tags <tag>[,<tag>,...]

Exclude routers which have any given tag(s)

router remove port

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)

router remove subnet

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)

router set

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)

router show

Display router details

openstack router show
    <router>
<router>

Router to display (name or ID)

router unset

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)