netconn-api/v2.0/section_neutron-ext-layer3.xml
Diane Fleming c5a1e0fb52 Clean up networking API reference
remove unneeded files
fix formatting
spell-check
title capitalization

Change-Id: I6f98cf14a02d138a87f22b213be82664372a7727
author: diane fleming
2014-05-16 10:48:10 -05:00

263 lines
10 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<section xml:id="router_ext" xmlns="http://docbook.org/ns/docbook"
xmlns:xi="http://www.w3.org/2001/XInclude"
xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0">
<title>Layer-3 networking (<literal>router</literal>)</title>
<para>The Layer-3 networking extension enables OpenStack
Networking API users to route packets between subnets, forward
packets from internal networks to external ones, and access
instances from external networks through <emphasis
role="italic">floating IPs</emphasis>.</para>
<para>The OpenStack Networking layer-3 extension defines these
resources:</para>
<itemizedlist>
<listitem>
<para><emphasis role="bold">router</emphasis>. A logical
entity that forwards packets across internal subnets
and NATs them on external networks through an
appropriate external gateway.</para>
<para>A router has an interface for each subnet with which
it is associated. By default, the IP address of such
interface is the subnet's gateway IP. Also, whenever a
router is associated with a subnet, a port for that
router interface is added to the subnet's
network.</para>
</listitem>
<listitem>
<para><emphasis role="bold">floatingip</emphasis>.
Represents an external IP address that is mapped to an
OpenStack Networking port and, optionally, a specific
IP address on a private OpenStack Networking network.
A floating IP enables access to an instance on a
private network from an external network. Floating IPs
can only be defined on networks where the <emphasis
role="italic">router:external</emphasis> attribute
(by the external network extension) is set to
<literal>True</literal>.</para>
</listitem>
</itemizedlist>
<table rules="all">
<caption>Router attributes</caption>
<col width="20%"/>
<col width="8%"/>
<col width="10%"/>
<col width="7%"/>
<col width="15%"/>
<col width="15%"/>
<col width="25%"/>
<thead>
<tr>
<th>Attribute</th>
<th>Type</th>
<th>Required</th>
<th>CRUD<footnote xml:id="crud1">
<para>
<itemizedlist>
<listitem>
<para><emphasis role="bold"
>C</emphasis>. Use the attribute in
create operations.</para>
</listitem>
<listitem>
<para><emphasis role="bold"
>R</emphasis>. This attribute is
returned in response to show and
list operations.</para>
</listitem>
<listitem>
<para><emphasis role="bold"
>U</emphasis>. You can update the
value of this attribute.</para>
</listitem>
<listitem>
<para><emphasis role="bold"
>D</emphasis>. You can delete the
value of this attribute.</para>
</listitem>
</itemizedlist>
</para>
</footnote></th>
<th>Default value</th>
<th>Validation constraints</th>
<th>Notes</th>
</tr>
</thead>
<tbody>
<tr>
<td>id</td>
<td>uuid-str</td>
<td>N/A</td>
<td>R</td>
<td>generated</td>
<td>N/A</td>
<td>Unique identifier for the router.</td>
</tr>
<tr>
<td>name</td>
<td>String</td>
<td>No</td>
<td>CRU</td>
<td>None</td>
<td>N/A</td>
<td>Human readable name for the router. Does not have
to be unique.</td>
</tr>
<tr>
<td>admin_state_up</td>
<td>Bool</td>
<td>No</td>
<td>CRU</td>
<td>true</td>
<td>{true | false }</td>
<td>Administrative state of the router.</td>
</tr>
<tr>
<td>status</td>
<td>String</td>
<td>N/A</td>
<td>R</td>
<td>N/A</td>
<td>N/A</td>
<td>Indicates whether or not a router is currently
operational.</td>
</tr>
<tr>
<td>tenant_id</td>
<td>uuid-str</td>
<td>No</td>
<td>CR</td>
<td>Derived from Authentication token</td>
<td>N/A</td>
<td>Owner of the router. Only admin users can specify
a tenant identifier other than its own.</td>
</tr>
<tr>
<td>external_gateway_info</td>
<td>dict</td>
<td>No</td>
<td>CRU</td>
<td>None</td>
<td>No constraint</td>
<td>Information on external gateway for the
router.</td>
</tr>
</tbody>
</table>
<table rules="all">
<caption>Floating IP attributes</caption>
<col width="20%"/>
<col width="8%"/>
<col width="10%"/>
<col width="7%"/>
<col width="15%"/>
<col width="15%"/>
<col width="25%"/>
<thead>
<tr>
<th>Attribute</th>
<th>Type</th>
<th>Required</th>
<th>CRUD</th>
<th>Default value</th>
<th>Validation constraints</th>
<th>Notes</th>
</tr>
</thead>
<tbody>
<tr>
<td>id</td>
<td>uuid-str</td>
<td>N/A</td>
<td>R</td>
<td>generated</td>
<td>N/A</td>
<td>Unique identifier for the floating IP
instance.</td>
</tr>
<tr>
<td>floating_network_id</td>
<td>uuid-str</td>
<td>Yes</td>
<td>CR</td>
<td>N/A</td>
<td>UUID Pattern</td>
<td>UUID of the external network where the floating IP
is to be created.</td>
</tr>
<tr>
<td>port_id</td>
<td>uuid-str</td>
<td>Yes</td>
<td>CRU</td>
<td>N/A</td>
<td>UUID Pattern</td>
<td>UUID of the port on an internal OpenStack
Networking network that is associated with the
floating IP.</td>
</tr>
<tr>
<td>fixed_ip_address</td>
<td>IP Address</td>
<td>No</td>
<td>CRU</td>
<td>None</td>
<td>IP address or null</td>
<td>Specific IP address on <literal>port_id</literal>
which should be associated with the floating
IP.</td>
</tr>
<tr>
<td>floating_ip_address</td>
<td>IP Address</td>
<td>N/A</td>
<td>R</td>
<td>Automatically allocated from pool</td>
<td>N/A</td>
<td>Address of the floating IP on the external
network.</td>
</tr>
<tr>
<td>tenant_id</td>
<td>uuid-str</td>
<td>No</td>
<td>CR</td>
<td>Derived from Authentication token</td>
<td>N/A</td>
<td>Owner of the floating IP. Only admin users can
specify a tenant identifier other than its
own.</td>
</tr>
</tbody>
</table>
<wadl:resources xmlns:wadl="http://wadl.dev.java.net/2009/02">
<wadl:resource
href="http://git.openstack.org/cgit/openstack/api-site/plain/api-ref/src/wadls/netconn-api/src/os-layer3-ext.wadl#Routers">
<wadl:method href="#createRouter"/>
</wadl:resource>
<wadl:resource
href="http://git.openstack.org/cgit/openstack/api-site/plain/api-ref/src/wadls/netconn-api/src/os-layer3-ext.wadl#router_id">
<wadl:method href="#showRouter"/>
<wadl:method href="#updateRouter"/>
<wadl:method href="#deleteRouter"/>
</wadl:resource>
<wadl:resource
href="http://git.openstack.org/cgit/openstack/api-site/plain/api-ref/src/wadls/netconn-api/src/os-layer3-ext.wadl#add_router_interface">
<wadl:method href="#addRouterInterface"/>
</wadl:resource>
<wadl:resource
href="http://git.openstack.org/cgit/openstack/api-site/plain/api-ref/src/wadls/netconn-api/src/os-layer3-ext.wadl#remove_router_interface">
<wadl:method href="#removeRouterInterface"/>
</wadl:resource>
<wadl:resource
href="http://git.openstack.org/cgit/openstack/api-site/plain/api-ref/src/wadls/netconn-api/src/os-layer3-ext.wadl#FloatingIps">
<wadl:method href="#createFloatingIp"/>
</wadl:resource>
<wadl:resource
href="http://git.openstack.org/cgit/openstack/api-site/plain/api-ref/src/wadls/netconn-api/src/os-layer3-ext.wadl#floatingip_id">
<wadl:method href="#showFloatingIp"/>
<wadl:method href="#updateFloatingIp"/>
<wadl:method href="#deleteFloatingIp"/>
</wadl:resource>
</wadl:resources>
</section>