如何在 Ubuntu 中正确更改我的公共 IP

如何在 Ubuntu 中正确更改我的公共 IP

我在 Digital Ocean 中有一个 Ubuntu droplet 和一个浮动 IP。我希望来自该 droplet 的所有请求都使用浮动 IP 完成。

如果我更改 /etc/netplan/50-cloud-init.yaml 中的 IP 地址并运行 sudo netplan apply,我就可以实现此目的。然后,如果我执行 curl ifconfig.me,我会得到正确的 IP 地址。

但是,当我重新启动机器时,它变得无法访问。我需要通过控制台登录,将 IP 改回 Droplet 的公共 IP,运行 sudo netplan apply。然后网络可用。之后我可以切换回浮动 IP,一切正常。

我怎样才能正确地进行此更改,以使其永久生效并在重启后继续生效?

答案1

浮动 IP 被路由到指定的 droplet 的 IP,您需要将其分配给辅助接口或本地主机。

添加一个新文件,例如/etc/netplan/00-floatip.yaml或任何按字母顺序排列的文件50-cloud-init.yaml(并确保它是 yaml 而不是 yml)

将其配置为类似如下形式:

network:
  version: 2
  renderer: networkd
  ethernets:
    lo:
      addresses:
        - 127.0.0.1/8
        - 192.0.2.0/32

其中 192.0.2.0 是你的浮动 IP

请注意,如果您希望出站流量默认使用浮动 IP,请查看https://www.digitalocean.com/community/questions/send-outbound-traffic-over-floating-ip

这不是浮动 IP 的预期用途,浮动 IP 用于入站流量。

相关内容