使用Oracle BYOIP与BYOASN广播自己的IP并附加到实例上

1,665 字 9 分钟
AI 摘要
介绍用Oracle Cloud免费实例配合BYOIP与BYOASN,将自有ASN和IP段导入OCI并广播,再配置VCN、子网、路由与安全组,把IPv6地址附加到实例,实现零成本播IP。

前言

对于大部分 BGP Player 来说,可以广播自己 ip 很重要,而大部分支持 BGP Session 的服务商都比较的昂贵,对大部分个人 Player 来说并不友好。而 Oracle Cloud 的免费 VPS 配合 BYOIP 与 BYOASN 功能则可以很好的解决这个问题。零成本播 IP,非常适合个人 Player。

准备工作

1. 一个成功注册并升级的 Oracle Cloud 账号 这步应该是最难的

甲骨文要求只有升级号才能用 BYOIP 与 BYOASN,即使这些功能不要钱,不太懂为什么

2. 自有 ASN 与 IP 段,注意 IP 段需要有对于 Oracle Cloud ASN(AS31898)的 roa 和你自己 ASN 的 roa。
对于 Oracle Cloud 不同区域的 ASN 不同,一般对于亚太地区都是 AS31898,具体可以自行查询

3. 对于 IP 段与 ASN WHOIS 的编辑权限(具体地说,可以编辑 ASN 的 descr 字段与 IP 段的 remarks 字段,可以参考这里)

教程开始~

1. 将 BYOIP 导入 Oracle Cloud,开始 roa 验证

进入 Oracle Cloud 控制台,选择左上角的导航菜单,选择 “网络”,然后选择 “BYOIP 导入BYOIP 点击 “导入 BYOIP CIDR 块/前缀”,并输入你要导入的段子 导入BYOIP2 IPv6 最小到/48,IPv4 最小到/24,跟在公网上能广播的最小大小一样

接着他会引导你编辑 whois,照着提示做,给 ip 段的 descr 里面复制加上给你的格式为 OCITOKEN::[IP 段]:[一堆字符] 的字符串,保存 whois 即可

请务必确保这段 ip 添加了你自己 asn 和 oci asn 的 roa,不然会导入失败

接着就会进入漫长的验证 roa 流程,一般为 4-7 天,耐心等待即可。

如果 roa 验证无效基本上几分钟就会告诉你结果,加上 roa 重新开始验证即可

这段时间我们可以顺便导入 ASN。

2. 导入 BYOASN

依旧左上角菜单栏,点击网络,在 IP 管理的最底下选择 “BYOASN” 并进入

BYOASN 的流程相对 BYOIP 来说较为简单,点击导入 ASN 后输入编号,接着把 descr 字段编辑为 OCITOKEN::[ASN 编号]:[一堆字符] 的格式,保存 whois 即可。

BYOASN 的导入很快,几分钟到几小时就完成了,等到状态变为 “活动” 即可。

导入BYOASN

3. 宣告 IP 段,更新源 ASN

等到 BYOIP 的状态变为 “活动” 后,就可以开始宣告 ip 段了。

等待几天后,进入 BYOIP 页面,不出意外的话你会看到你的 ip 段状态变为 “活动”,源 ASN 为 31898

点击右边三个点 - 更新源 ASN,把 ASN 改为你自己的 ASN,点击更新即可。

更新源

完事之后先别急,再点击那个菜单,点通告就行了。

这个时候 bgp.tools 上已经可以查到这个段的路由了,长这样: 宣告

至此宣告完成。已经成功的完成了使用自己的 ASN 在 OCI 上广播了自己的 IP 段,下一步便是附加 IP 段到实例上。

4. 附加 IP 到到实例上

随便创建一个实例和他配套的子网,开机确保他给你的 v4 能连上 ssh,然后记住一下他所在的 vcn 和子网。继续下一步。

首先,我们需要添加我们导入的 BYOIP 到实例的 VCN 里。这个过程有点绕,这里我一步一步给大家演示。

实例

例子中我们需要为 “instance-20250812-1305” 这个实例添加 BYOIP。

首先进入网络 - 虚拟云网络,选择你实例所在的 VCN 点击 IP 管理 - CIDR 块/前缀,点击 “添加 CIDR 块/前缀”,弹出菜单中关掉” 分配 Oracle 分配的 IPv6 /56 “,BYOIPv6 前缀选择你导入的 BYOIP,点击添加即可。

附加到vnic

接下来,为实例所在的子网分配一个来自 VCN 的 IPv6 CIDR 块。

还是刚才的菜单,点击子网,点进去你实例所在的子网(这里另外两个有了前缀的可以不用管,是我目前导入好的),点击 IP 管理 - IPv6 前缀 - 添加 IPv6 前缀

附加到子网

接着选择并划分你的前缀。需要把你导入的大段割成/64 的子段才能用在子网上。

划分子段

选择并划分好后,点击添加 IPv6 前缀即可。

接下来需要配置路由表,允许互联网访问。添加一条路由规则,为子网的所有 v6 出流量指向 oci 的互联网网关让他能上网。

返回 vcn 详情页面,点击路由,选择你那个默认路由表(此处是 Default Default Route Table for vcn-20250812-1306),点击路由规则 - 添加路由规则。

协议版本选择 IPv6,目的地 CIDR 块填写::/0,目标类型选择 Internet 网关,目标选择你的互联网网关(此处为 Internet Gateway vcn-20250812-1306),添加路由规则即可。

路由表

接着,编辑一下安全组允许 v6 流量。

返回 vcn 详情页面,点击安全,进入你实例所在子网的安全列表(此处为 Default Security List for subnet-20250812-1307),

安全组1

点击安全规则 - 添加入站规则。自行决定。我这里允许所有地址所有协议所有流量了。

出站规则建议允许所有流量。(目的地:: 0/0,协议全部)

最后,为实例添加分配的 ipv6 地址。

依旧左上角菜单,计算 - 实例,选择目标实例 - 网络,下滑到附加的 VNIC 部分,点击实例的主 VNIC。

实例1

上方菜单栏选择 IP 管理 - IPv6 地址,点击分配 IPv6 地址 实例2

实例3

前缀选择你刚才添加到子网的那个前缀,IPv6 地址分配随意,建议自动分配,接着点击分配即可。

到此为止,OCI 控制台内的操作已经全部完成,可以复制一下被分配的 IPv6 地址。

5. 配置实例内的 IPv6 地址

SSH 进入实例。首先看一眼网口有 v6 没。

Terminal window
ip a

看一下你的主网口,一般是 eth0 或者 ens3 之类的,看看有没有 v6 地址。正常情况下这时候你可以看到 inet6 有一行是你刚才分配的 v6 地址。

实例4

这个时候就已经 ok 啦,享受吧~ 如果没有 v6 地址,可以重新 dhcp 一下。

Terminal window
sudo dhclient -6 eth0(注意替换网卡名)

可以用 nexttrace 之类的工具确认一下可达性。

Terminal window
curl nxtrace.org/nt |bash
nexttrace --source [你的v6地址] ys.mihoyo.com
实例5

tata 回国,对味了🤮。确实甲骨文播出去了,搞定。

文章分享

如果这篇文章对你有帮助,欢迎分享给更多人!

使用Oracle BYOIP与BYOASN广播自己的IP并附加到实例上

https://blog.icybit.cn/posts/34
作者
IcyMichiko
发布于
2025-11-07
许可协议
CC BY-NC-SA 4.0

评论

Markdown

评论区加载中…