我的目标

我的目标

我有一台 Ubuntu 13.10 VPS 服务器,有 1 个 IPv4(111.111.111.111)(和 1 个 IPv6 地址)。

我最近请求了一个额外的 IP 地址(222.222.222.222),但我似乎无法弄清楚如何将新 IP 地址添加到我的网络配置中。

我当前(默认?)的网络配置:

/etc/network/interfaces

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet dhcp

经过搜索后我发现我需要添加新的 IP 地址,如下所示:

iface eth0:1 inet static
address 222.222.222.222
netmask 255.255.255.0

但不幸的是,这不起作用,我觉得这与->dhcp中的设置有关,但我不知道如何解决这个问题。auto eth0iface eth0 inet dhcp

还值得注意的是,IP 1 的网关与 IP 2 的网关不同,这会导致任何问题吗?

我的感觉是我需要删除当前的网络配置eth0并将其替换为:

iface eth0 inet static
address 111.111.111.111
netmask 255.255.255.0
gateway xxx.xxx.xxx.xxx

最终结果看起来应该是这样的:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
iface eth0 inet static
address 111.111.111.111
netmask 255.255.255.0
gateway xxx.xxx.xxx.xxx

iface eth0:1 inet static
address 222.222.222.222
netmask 255.255.255.0

由于此服务器上目前有一些活跃的小型网站,因此我不想通过更改这些网络配置来冒任何停机风险

我的目标

我的目标是(请让我知道这是否可行)对端口 80 上的所有 apache2 请求使用 IP 地址 1(111.11......)。并且对通过 apache2 以外的其他方式(例如 NodeJs)但也在端口 80 上的所有请求使用 IP 地址 2(222.22......)。

答案1

如果两个地址都在同一个接口上,则您建议的配置看起来不错。但是,您需要以下几行来确保接口启动:

auto eth0
auth eth0:1

这些可以组合为:

auto eth0 eth0:1

如果未提供 IP 地址和网络掩码,则网络和广播地址将根据 IP 地址和网络掩码确定。您的 ISP 必须提供这些。他们应该能够提供广播和网络地址,尽管我从未配置过它们。

如果您有固定的 IP 地址,则不需要 DHCP 或热插拔。这两者都适用于非服务器配置。DHCP 用于在连接到网络时从路由器或其他 DHCP 服务器获取地址。热插拔用于在连接到不同网络时从一组配置中选择适当的配置。热插拔适用于办公室或家中使用的笔记本电脑,因为 DHCP 不足以进行配置。

相关内容