一、核心结论
存在 VCFC/CloudOS 自动下发、交换机传统视图看不见的隐式安全策略,这是虚拟机无法 SSH 核心三层网关的核心根源;传统display acl只能查看手工静态 ACL,控制器下发的 SDN 分布式流表、微分段安全组、VRF 网关隔离策略不在传统 ACL 视图展示。
组网背景回顾
静态 VXLAN、集中式三层网关部署在核心交换机,租户 VM 属于 Overlay VNI 网段,网关 IP 为核心交换机 VSI 虚接口 IP;VM 访问网关属于同租户 Overlay→三层网关(Underlay 本机接口) 跨层流量,会被 SDN 四层隔离机制拦截。
二、四类隐式隔离机制(均为控制器下发、传统视图不可见)
1. CloudOS 安全组(VCFC 下发分布式 VXLAN ACL,最高发)
机制原理
CloudOS 租户页面配置的安全组,通过 VCFC 下发至接入 / 核心交换机芯片硬件流表,属于Overlay 微分段 ACL;
安全组分出方向 Egress(VM 发起访问)、入方向 Ingress,VM 主动 SSH 网关属于出方向流量;
平台默认安全组策略多为「拒绝所有跨网段 TCP 高端口 / 管理端口」,未手动放行 TCP 22 出站到网关 IP 即直接丢弃;
关键特征:
传统display acl static看不到规则;
规则绑定 VNI/BD,仅对租户 Overlay 流量生效;
丢弃动作无传统 ACL 日志,只能查看 SDN 流表计数器。
2. VCFC VSI 网关内置南北向隔离策略(集中式网关专属)
机制原理
静态 VXLAN 集中网关场景,VCFC 会给每个 VSI 虚接口下发网关访问控制隐式规则:
默认限制租户 Overlay 虚拟机主动访问网关 VSI 接口 IP(防止租户扫描网关、暴力登录交换机);
区分两种流量:
VM 互访同租户网段:默认放行;
VM 访问三层网关本机 IP:默认拦截 TCP 管理端口 22、23、80 等;
该策略属于 VSI 私有流表,display current-configuration、display acl完全无输出。
3. VRF 租户三层隔离 + VCFC 下发动态 VPN 实例过滤规则
机制原理
每个租户独立 VRF,VCFC 自动下发 VRF 内隐式过滤:
VRF 内路由可达不代表四层流量放行,叠加控制器下发的 VRF 内 ACL;
网关 VSI 接口属于该租户 VRF,VM 访问 VRF 网关 IP 会匹配隐式 deny 管理端口规则;
手工查看 VRF 配置只能看到 RD/RT,看不到附加过滤策略。
4. CVK 虚拟化底层虚拟机端口 vFW 过滤(容易忽略)
机制原理
CloudOS 虚拟机网卡绑定分布式虚拟防火墙 vFW,规则由 CloudOS 同步至 CVK 宿主机 OVS 流表:
VM 发出的 SSH 报文先经过宿主机 OVS 安全组流表过滤,再封装 VXLAN 上送接入交换机;
宿主机无交换机命令,交换机侧抓包直接看不到 VM 发出的 TCP 22 报文;
交换机查不到拦截 ACL,实际丢弃发生在计算节点 CVK。
三、分层完整排查步骤(从虚拟机→CVK→接入交换机→核心 VCFC 控制器)
阶段 1:虚拟机内基础连通性定位
测试连通性:ping 网关 IP 是否通
ping 不通:VXLAN / 路由问题;
ping 通但 TCP 22 不通:四层隐式安全策略拦截。
虚拟机内关闭 iptables/firewalld,排除系统本地防火墙干扰。
阶段 2:CVK 计算宿主机侧(排查 vFW/OVS 安全组)
找到虚拟机对应 vnet 端口:ovs-dbg listports
监听虚拟网卡流量:ovs-tcpdump -i vnetX tcp port 22
抓不到 VM 发出 22 报文:CloudOS 安全组出站拦截;
能抓到报文,接入交换机无报文上送:CVK OVS 流表丢弃。
查看 OVS 下发安全组流表:ovs-ofctl dump-flows br0 | grep tcp
阶段 3:接入交换机(VXLAN 入节点,查看 VCFC 下发硬件流表)
专用 SDN 查询命令(传统 ACL 视图看不到)
plaintext
# 查看所有VCFC下发VXLAN分布式ACL(核心排查)
display vxlan vni acl
# 查看芯片硬件流表,匹配TCP22丢弃计数
display sdn flow-table statistics
# 查看BD内绑定的动态过滤策略
display vxlan bd detail
# 查看VSI虚接口下发的网关访问控制策略
display vsi interface access-control
重点观察:是否存在deny tcp any any eq 22的动态下发规则,且计数器持续增长。
阶段 4:核心交换机(集中网关 VSI 隐式隔离校验)
查看 VSI 接口控制器下发的隐式访问策略
plaintext
display vsi interface Vsi-interface X access-control dynamic
抓取 VXLAN 解封装后去往网关 IP 的流量:
plaintext
packet-capture interface Vsi-interface X destination-ip 网关IP port 22
抓到报文无响应 = 核心网关隐式策略拦截。
阶段 5:VCFC 控制器平台侧(根源策略查看)
登录 VCFC → 虚拟网络 → 租户 VPC → 安全组;
检查虚拟机绑定安全组出站规则,是否放行源任意、目的网关 IP、TCP 22。
进入 VSI 网关配置,查看「租户访问网关控制策略」,开启允许 VM 访问网关 SSH。
查看控制器下发任务日志,确认是否下发 deny 22 的 ACL 至交换机。
阶段 6:CloudOS 平台侧安全组校验
云主机详情 → 安全组配置,添加出站放行规则:
协议 TCP,源地址任意,目的地址为租户三层网关 IP,目的端口 22;
保存后等待 1~3 分钟策略同步至 VCFC、交换机、CVK 宿主机。
四、临时放行 & 永久根治方案
临时测试(交换机侧放行)
plaintext
# 全局放开VSI网关对22端口的拦截(临时)
vsi access-control disable
# 清空SDN动态流表,重新下发策略
reset sdn flow-table all
永久标准配置
CloudOS 安全组添加出站规则,放行 VM 访问网关 TCP22;
VCFC 虚拟网络实例开启「租户虚拟机允许访问三层网关管理端口」;
如需全租户放开,在 VCFC 全局关闭 VSI 网关默认隔离:
plaintext
vsi default access-control disable
五、关键区分总结
手工静态 ACL:display acl static可见,仅手工配置;
VCFC/CloudOS 下发 SDN 隐式策略:动态流表、VXLAN ACL、VSI 网关控制,传统配置视图无法查看,必须使用sdn flow-table / vxlan vni acl / vsi access-control专用 SDN 查询命令;
故障核心逻辑:VM 访问网关属于 Overlay 访问三层网关本机 IP,触发 VCFC 默认的网关管理端口拦截策略,仅放行互通 ICMP,拦截 TCP 管理端口 22。
暂无评论
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作
举报
×
侵犯我的权益
×
侵犯了我企业的权益
×
抄袭了我的内容
×
原文链接或出处
诽谤我
×
对根叔社区有害的内容
×
不规范转载
×
举报说明
暂无评论