SSF0SSF0
首页
前端
  • Node
  • Go
  • Python
  • MySql
  • Bash
  • Git
  • Docker
  • VuePress
  • CI/CD
  • 服务器
  • 网站
  • 学习资料
  • 软件
  • 开源项目
Timeline
Github
标签
分类
首页
前端
  • Node
  • Go
  • Python
  • MySql
  • Bash
  • Git
  • Docker
  • VuePress
  • CI/CD
  • 服务器
  • 网站
  • 学习资料
  • 软件
  • 开源项目
Timeline
Github
标签
分类
  • Bash

    • Bash 获取路径在不同类型电脑的区别
  • Git

    • Git 使用 ssh 与 https 的区别
    • Git 回滚、重置与变基
    • 文件名大小写发生变化的坑
    • Git 提交信息规范解读与实践指南
    • Git 历史邮箱统一
    • Git 拉取 GitHub 失败、配置代理及 DNS 问题排查总结
    • Git 实战教程:如何使用 Cherry-pick 或直接覆盖让两个分支同步公共功能
  • Docker

    • Docker 命令大全
    • nginx 镜像部署静态文件
    • Docker 运行命令说明
    • 使用 node 镜像运行本地项目
    • 挂载和卷的区别
    • Docker 打包多平台镜像
    • Docker 使用 mysql
    • Docker 容器网络访问问题总结
    • Docker 容器绑定ip问题
  • VuePress

    • 使用 VuePress 搭建个人博客概括
  • CI/CD

    • blog 使用 Github-Actions 部署 docker 服务器
    • GitHub Actions项目部署国内服务器文件传输时间优化
  • 服务器

    • 腾讯云使用 ssh 连接服务器(Linux 实例)
    • ssl 证书安装到 docker 服务器
    • 操作系统与架构
    • ssh 连接时长问题
    • Oracle 服务器基础知识
    • OCI 专属网络拓扑图
    • 甲骨文-宝塔面板无法访问问题
    • 甲骨文服务器防火墙问题排查记录
    • 甲骨文重启后宝塔面板无法访问
  • hosts 文件指南
  • Cloudflare DNS与代理
  • 跨平台定时任务设置指南
  • Edge 浏览器连不上代理?一场由插件引发的“夺权”与 v2rayN 的深度探索
  • 二级域名访问异常排查记录
  • 软件走代理时如何抓包
  • JetBrains AI 使用
  • Clash 代理工作原理详解

OCI 专属网络拓扑图

  • 你的实例在 VCN 里
  • 实例挂在 Subnet 里
  • 实例通过 VNIC 接入网络
  • 实例有 Private IP
  • 这个 Private IP 绑定了一个 Public IP
  • 通过 Internet Gateway 对公网通信
  • Route Table / Security List / NSG 共同参与访问控制

Mermaid 图表渲染失败:请检查图表语法

flowchart LR
    User["你的电脑 / 公网用户"]

    subgraph OCI["OCI(按你当前场景)"]
        subgraph VCN["VCN 10.0.0.0/16<br/>你的虚拟云网络"]
            IGW["Internet Gateway<br/>公网入口 / 出口"]
            RT["Route Table<br/>0.0.0.0/0 -> IGW"]
            SL["Security List<br/>子网级安全规则"]

            subgraph Subnet["Public Subnet 10.0.0.0/24<br/>注意:子网仍然是私网网段"]
                SubnetCfg["Subnet 私网地址池"]
                VNIC["Primary VNIC<br/>实例主网卡"]
                PrivIP["Private IP<br/>10.0.0.103"]
                VM["OCI Instance<br/>你的云服务器"]
                OSFW["实例防火墙<br/>iptables / firewalld"]
                APP["SSH / Nginx / App"]

                SubnetCfg --> VNIC --> PrivIP --> VM --> OSFW --> APP
            end

            NSG["NSG<br/>VNIC级安全规则"]
        end
    end

    PIP["Public IP<br/>147.224.x.x"]

    User -->|访问 147.224.x.x:22/80/443| IGW
    PIP -.绑定到.-> PrivIP
    RT -.关联到.-> SubnetCfg
    SL -.关联到.-> SubnetCfg
    NSG -.绑定到.-> VNIC

    IGW -->|入站流量| SL
    SL -->|规则检查| NSG
    NSG -->|规则检查| VNIC

    APP -.响应流量.-> VNIC
    VNIC -.按默认路由返回.-> RT
    RT -.-> IGW
    IGW -.-> User

1 VCN 是什么

图里最外层的:

  • VCN 10.0.0.0/16

它表示:

这是你在 OCI 里创建的一整张虚拟私有网络

不是 Oracle 的全网。


2 Subnet 是什么

VCN 里面的:

  • Public Subnet 10.0.0.0/24

它表示:

这是 VCN 里的一段子网

而且要特别记住:

即使叫 Public Subnet,它通常也仍然是私网 CIDR。

也就是说:

  • 10.0.0.0/24 是私网
  • 不是公网地址段

3 实例真正通过谁接入网络

不是实例直接接到 Subnet。

而是:

实例通过 VNIC 接入 Subnet

所以图里是:

  • Subnet
  • VNIC
  • Private IP
  • Instance

4 Public IP 到底属于谁

图里我专门画了这一条:

Public IP -.绑定到.-> Private IP

这就是你前面最困惑的点。

意思是:

Public IP 不是 Subnet 自己的地址段,而是绑定在这个 VNIC 的 Private IP 上的对外地址。

所以实例仍然在私网里,只是多了一个公网入口。


5 公网访问为什么能进来

路径是:

公网用户
-> Internet Gateway
-> Security List / NSG 检查
-> VNIC
-> 实例
-> 实例防火墙
-> 应用

也就是:

  • 有公网 IP 还不够
  • 还要有 IGW
  • 还要有 安全规则
  • 还要有 系统防火墙
  • 还要应用本身在监听端口

6 Route Table 在哪一步起作用

很多人会误解成:

入站流量每一步都在“走路由表”

更准确地说:

Route Table 对“回包”和“出站”特别关键。

所以图里我把回包路径画成了:

应用响应
-> VNIC
-> Route Table
-> Internet Gateway
-> 公网用户

如果没有:

0.0.0.0/0 -> Internet Gateway

就可能出现:

  • 请求进来了
  • 但回包回不去
  • 于是你感觉“连不上”

7 你的公网访问路径图(更直观版)

如果你想看“访问过程”,这张更容易理解:

Mermaid 图表渲染失败:请检查图表语法

sequenceDiagram
    participant U as 你的电脑
    participant IGW as Internet Gateway
    participant SEC as Security List / NSG
    participant V as VNIC
    participant VM as OCI Instance
    participant F as OS 防火墙 / 应用

    U->>IGW: 访问 Public IP:22/80/443
    IGW->>SEC: 进入 VCN 后进行规则检查
    SEC->>V: 允许后送到对应 VNIC
    V->>VM: 进入实例
    VM->>F: 检查系统防火墙和服务监听
    F-->>U: 正常响应

    Note over VM,IGW: 回包依赖 Route Table:0.0.0.0/0 -> Internet Gateway

你现在可以把整套关系记成一句话

实例实际在 VCN 的私网 Subnet 中,通过 VNIC 拥有 Private IP;Public IP 绑定在这个 Private IP 上;公网流量通过 Internet Gateway 进入 VCN,经 Security List / NSG 检查后到达 VNIC,再进入实例;而实例回包则依赖 Route Table 通过 IGW 返回公网。

最后更新时间:
贡献者: 何风顺
上一页
Oracle 服务器基础知识
下一页
甲骨文-宝塔面板无法访问问题