11.5. 创建私有 VLAN 端口


创建私有 VLAN (PVLAN)网络后,您可以创建具有不同隔离级别的端口,以控制资源之间的网络流量。您可以创建 promiscuous, community, 或 isolated port。

先决条件

  • 要创建 PVLAN 端口的网络必须启用端口安全性,并且 pvlan 选项设置。
  • 管理员已为您创建一个项目,并为您提供了一个 clouds.yaml 文件来访问云。
  • python-openstackclient 软件包在您的工作站上。

    $ dnf list installed python-openstackclient

流程

  1. 确认为您的云设置了系统 OS_CLOUD 变量:

    $ echo $OS_CLOUD
    my_cloud

    如果需要,重置变量:

    $ export OS_CLOUD=my_other_cloud

    作为替代方案,您可以在每次运行 openstack 命令时添加 --os-cloud <cloud_name > 选项指定云名称。

  2. 确认您要在其上创建 PVLAN 端口的网络启用了端口安全性,并且 pvlan 选项设置。

    Example

    检查是否启用了端口安全性,并且 example 网络上设置了 pvlan 选项,1d5ec3d6-e7ea-4ab7-9a19-8ddd0c31be19:

    $ openstack network show 1d5ec3d6-e7ea-4ab7-9a19-8ddd0c31be19 \
    -c port_security_enabled -c pvlan
    输出示例
    +-----------------------+-------+
    | Field                 | Value |
    +-----------------------+-------+
    | port_security_enabled | True  |
    | pvlan                 | True  |
    +-----------------------+-------+
  3. 如果需要,要启用端口安全性并在网络上设置 pvlan 选项,请运行以下命令:

    $ openstack network set <network> --enable-port-security --pvlan

    其中:

    <network>
    指定您要修改的网络的名称或 ID。
  4. 为端口类型选择适当的操作。如需更多信息,请参阅 私有 VLAN 的端口类型

    1. 端口类型: promiscuous.要创建可与所有其他端口通信的混杂端口,请运行以下命令:

      $ openstack port create \
        --network <network> \
        --pvlan-type promiscuous \
        <name>

      其中:

      <network>
      指定您要在其上创建端口的 PVLAN 网络的名称或 ID。
      <port_name>
      指定您要创建的 promiscuous 端口的名称。
    2. 端口类型: community.要创建可在同一社区中与其他端口通信的社区端口,请运行以下命令:

      $ openstack port create \
        --network <network_name> \
        --pvlan-type community \
        --pvlan-community <community_label> \
        <name>

      其中:

      <community_label>
      为 community 组指定唯一标签。community 标签必须以字母、下划线或句点开头,并且只能包含字母、数字、下划线、句点和连字符。
      <name>

      指定您要创建的社区端口的名称。

      注意

      所有具有相同 community 标签的端口都可以相互通信。具有不同社区标签的端口无法相互通信,即使它们位于同一网络中。

    3. 端口类型: isolated.要创建只能与 promiscuous 端口通信的隔离端口,请运行以下命令:

      $ openstack port create \
        --network <network> \
        --pvlan-type isolated \
        <name>

      其中:

      <name>
      指定隔离端口的名称。

验证

  • 验证端口配置:

    $ openstack port show <port_name> -c pvlan_type -c pvlan_community

    社区端口的输出示例

    +-----------------+-------------+
    | Field           | Value       |
    +-----------------+-------------+
    | pvlan_community | community_1 |
    | pvlan_type      | community   |
    +-----------------+-------------+

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

关于红帽文档

Legal Notice

Theme

© 2026 Red Hat
返回顶部