ネットワークの作成と管理

ネットワークの作成と管理

コマンドを実行する前に、 OpenStack RC ファイルを使って環境変数を設定してください

ネットワークの作成

  1. システムの拡張を表示します。

    $ openstack extension list -c Alias -c Name --network
    +------------------------------------------+---------------------------+
    | Name                                     | Alias                     |
    +------------------------------------------+---------------------------+
    | Default Subnetpools                      | default-subnetpools       |
    | Network IP Availability                  | network-ip-availability   |
    | Auto Allocated Topology Services         | auto-allocated-topology   |
    | Neutron L3 Configurable external gateway | ext-gw-mode               |
    | Address scope                            | address-scope             |
    | Neutron Extra Route                      | extraroute                |
    +------------------------------------------+---------------------------+
    
  2. ネットワークを作成します。

    $ openstack network create net1
    Created a new network:
    +---------------------------+--------------------------------------+
    | Field                     | Value                                |
    +---------------------------+--------------------------------------+
    | admin_state_up            | UP                                   |
    | availability_zone_hints   |                                      |
    | availability_zones        |                                      |
    | created_at                | 2016-12-21T08:32:54Z                 |
    | description               |                                      |
    | headers                   |                                      |
    | id                        | 180620e3-9eae-4ba7-9739-c5847966e1f0 |
    | ipv4_address_scope        | None                                 |
    | ipv6_address_scope        | None                                 |
    | mtu                       | 1450                                 |
    | name                      | net1                                 |
    | port_security_enabled     | True                                 |
    | project_id                | c961a8f6d3654657885226378ade8220     |
    | provider:network_type     | vxlan                                |
    | provider:physical_network | None                                 |
    | provider:segmentation_id  | 14                                   |
    | revision_number           | 3                                    |
    | router:external           | Internal                             |
    | shared                    | False                                |
    | status                    | ACTIVE                               |
    | subnets                   |                                      |
    | tags                      | []                                   |
    | updated_at                | 2016-12-21T08:32:54Z                 |
    +---------------------------+--------------------------------------+
    

    注釈

    作成したネットワークのフィールドで管理者ユーザー以外には表示されないものもあります。

  3. 指定のプロバイダーネットワークタイプでネットワークを作成します。

    $ openstack network create net2 --provider-network-type vxlan
    Created a new network:
    +---------------------------+--------------------------------------+
    | Field                     | Value                                |
    +---------------------------+--------------------------------------+
    | admin_state_up            | UP                                   |
    | availability_zone_hints   |                                      |
    | availability_zones        |                                      |
    | created_at                | 2016-12-21T08:33:34Z                 |
    | description               |                                      |
    | headers                   |                                      |
    | id                        | c0a563d5-ef7d-46b3-b30d-6b9d4138b6cf |
    | ipv4_address_scope        | None                                 |
    | ipv6_address_scope        | None                                 |
    | mtu                       | 1450                                 |
    | name                      | net2                                 |
    | port_security_enabled     | True                                 |
    | project_id                | c961a8f6d3654657885226378ade8220     |
    | provider:network_type     | vxlan                                |
    | provider:physical_network | None                                 |
    | provider:segmentation_id  | 87                                   |
    | revision_number           | 3                                    |
    | router:external           | Internal                             |
    | shared                    | False                                |
    | status                    | ACTIVE                               |
    | subnets                   |                                      |
    | tags                      | []                                   |
    | updated_at                | 2016-12-21T08:33:34Z                 |
    +---------------------------+--------------------------------------+
    

サブネットの作成

サブネットを作成します。

$ openstack subnet create subnet1 --network net1
  --subnet-range 192.0.2.0/24
+-------------------+--------------------------------------+
| Field             | Value                                |
+-------------------+--------------------------------------+
| allocation_pools  | 192.0.2.2-192.0.2.254                |
| cidr              | 192.0.2.0/24                         |
| created_at        | 2016-12-22T18:47:52Z                 |
| description       |                                      |
| dns_nameservers   |                                      |
| enable_dhcp       | True                                 |
| gateway_ip        | 192.0.2.1                            |
| headers           |                                      |
| host_routes       |                                      |
| id                | a394689c-f547-4834-9778-3e0bb22130dc |
| ip_version        | 4                                    |
| ipv6_address_mode | None                                 |
| ipv6_ra_mode      | None                                 |
| name              | subnet1                              |
| network_id        | 180620e3-9eae-4ba7-9739-c5847966e1f0 |
| project_id        | c961a8f6d3654657885226378ade8220     |
| revision_number   | 2                                    |
| service_types     |                                      |
| subnetpool_id     | None                                 |
| updated_at        | 2016-12-22T18:47:52Z                 |
+-------------------+--------------------------------------+

subnet-create コマンドには、以下の位置パラメーターおよびオプションのパラメーターが含まれています。

  • サブネットが所属するネットワークの名前または ID。

    この例では、net1 がネットワーク名を指定する引数です。

  • サブネットの CIDR。

    In this example, 192.0.2.0/24 is a positional argument that specifies the CIDR.

  • サブネット名(オプション)。

    この例では、--name subnet1 がサブネットの名前を指定します。

neutron の subnet サブコマンドの高度な使用法に関する詳細と例は、OpenStack Administrator Guide を参照してください。

ルーターの作成

  1. ルーターを作成します。

    $ openstack router create router1
    +-------------------------+--------------------------------------+
    | Field                   | Value                                |
    +-------------------------+--------------------------------------+
    | admin_state_up          | UP                                   |
    | availability_zone_hints |                                      |
    | availability_zones      |                                      |
    | created_at              | 2016-12-22T18:48:57Z                 |
    | description             |                                      |
    | distributed             | True                                 |
    | external_gateway_info   | null                                 |
    | flavor_id               | None                                 |
    | ha                      | False                                |
    | headers                 |                                      |
    | id                      | e25a24ee-3458-45c7-b16e-edf49092aab7 |
    | name                    | router1                              |
    | project_id              | e17431afc0524e0690484889a04b7fa0     |
    | revision_number         | 1                                    |
    | routes                  |                                      |
    | status                  | ACTIVE                               |
    | updated_at              | 2016-12-22T18:48:57Z                 |
    +-------------------------+--------------------------------------+
    

    返された一意なルーター ID を記録します。これは以降の手順に必要となります。

  2. ルーターを外部プロバイダーネットワークにリンクします。

    $ openstack router set ROUTER --external-gateway NETWORK
    

    ROUTER をルーターの一意な ID で置き換え、NETWORK を外部プロバイダールーターの一意な ID で置き換えます。

  3. ルーターをサブネットにリンクします。

    $ openstack router add subnet ROUTER SUBNET
    

    ROUTER をルーターの一意な ID で置き換え、SUBNET をサブネットの一意な ID で置き換えます。

ポートの作成

  1. 指定の IP アドレスでポートを作成します。

    $ openstack port create --network net1 --fixed-ip subnet=subnet1,ip-address=192.0.2.40 port1
    +-----------------------+-----------------------------------------+
    | Field                 | Value                                   |
    +-----------------------+-----------------------------------------+
    | admin_state_up        | UP                                      |
    | allowed_address_pairs |                                         |
    | binding_host_id       |                                         |
    | binding_profile       |                                         |
    | binding_vif_details   |                                         |
    | binding_vif_type      | unbound                                 |
    | binding_vnic_type     | normal                                  |
    | created_at            | 2016-12-22T18:54:43Z                    |
    | description           |                                         |
    | device_id             |                                         |
    | device_owner          |                                         |
    | extra_dhcp_opts       |                                         |
    | fixed_ips             | ip_address='192.0.2.40', subnet_id='a   |
    |                       | 394689c-f547-4834-9778-3e0bb22130dc'    |
    | headers               |                                         |
    | id                    | 031ddba8-3e3f-4c3c-ae26-7776905eb24f    |
    | mac_address           | fa:16:3e:df:3d:c7                       |
    | name                  | port1                                   |
    | network_id            | 180620e3-9eae-4ba7-9739-c5847966e1f0    |
    | port_security_enabled | True                                    |
    | project_id            | c961a8f6d3654657885226378ade8220        |
    | revision_number       | 5                                       |
    | security_groups       | 84abb9eb-dc59-40c1-802c-4e173c345b6a    |
    | status                | DOWN                                    |
    | updated_at            | 2016-12-22T18:54:44Z                    |
    +-----------------------+-----------------------------------------+
    

    In the previous command, net1 is the network name, which is a positional argument. --fixed-ip subnet<subnet>,ip-address=192.0.2.40 is an option which specifies the port’s fixed IP address we wanted.

    注釈

    ポートの作成時、サブネット内の未割り当ての IP を指定できます。そのアドレスが、(クラウドプロバイダーにより設定された) 事前定義済みプールの確保済み IP アドレスになくても構いません。

  2. IP アドレス指定なしでポートを作成します。

    $ openstack port create port2 --network net1
    +-----------------------+-----------------------------------------+
    | Field                 | Value                                   |
    +-----------------------+-----------------------------------------+
    | admin_state_up        | UP                                      |
    | allowed_address_pairs |                                         |
    | binding_host_id       |                                         |
    | binding_profile       |                                         |
    | binding_vif_details   |                                         |
    | binding_vif_type      | unbound                                 |
    | binding_vnic_type     | normal                                  |
    | created_at            | 2016-12-22T18:56:06Z                    |
    | description           |                                         |
    | device_id             |                                         |
    | device_owner          |                                         |
    | extra_dhcp_opts       |                                         |
    | fixed_ips             | ip_address='192.0.2.10', subnet_id='a   |
    |                       | 394689c-f547-4834-9778-3e0bb22130dc'    |
    | headers               |                                         |
    | id                    | eac47fcd-07ac-42dd-9993-5b36ac1f201b    |
    | mac_address           | fa:16:3e:96:ae:6e                       |
    | name                  | port2                                   |
    | network_id            | 180620e3-9eae-4ba7-9739-c5847966e1f0    |
    | port_security_enabled | True                                    |
    | project_id            | c961a8f6d3654657885226378ade8220        |
    | revision_number       | 5                                       |
    | security_groups       | 84abb9eb-dc59-40c1-802c-4e173c345b6a    |
    | status                | DOWN                                    |
    | updated_at            | 2016-12-22T18:56:06Z                    |
    +-----------------------+-----------------------------------------+
    

    注釈

    openstack port create コマンドで IP アドレスを指定しない場合、システムが IP アドレスを一つ確保することに注意してください。

    注釈

    --mac-address MAC_ADDRESS で MAC アドレスを指定することができます。 00:00:00:00:00:00ff:ff:ff:ff:ff:ff などの無効な MAC アドレスを指定した場合は、エラーが返ります。

  3. 指定の Fixed IP アドレスでポートを問い合わせします。

    $ neutron port-list --fixed-ips ip_address=192.0.2.2 \
      ip_address=192.0.2.40
    +----------------+------+-------------------+-------------------------------------------------+
    | id             | name | mac_address       | fixed_ips                                       |
    +----------------+------+-------------------+-------------------------------------------------+
    | baf13412-26... |      | fa:16:3e:f6:ec:c7 | {"subnet_id"... ..."ip_address": "192.0.2.2"}   |
    | f7a08fe4-e7... |      | fa:16:3e:97:e0:fc | {"subnet_id"... ..."ip_address": "192.0.2.40"}  |
    +----------------+------+-------------------+-------------------------------------------------+
    
Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.