如何更改服务器 centos 的传出 IP 地址

如何更改服务器 centos 的传出 IP 地址

我需要确保我的客户端的传出 IP 地址使用分配给他们的专用 IP。

例如,

site123.com 的 IP 为 123.123.123.2(eth0:1)(传入时解析正常)

但它在发出传出请求时使用我的主服务器 ip 123.123.123.1 (eth0)

我该如何改变这种状况?

我在专用服务器上使用 centOS。

答案1

默认情况下,所有内容都会通过默认路由,该路由与默认 eth0 ip 相关联。您可以更改 eth0 和 eth0:0 ip,然后更改默认路由....

如果您只想将其用于某些事情,那么您需要使用 iproute2 包并使用 ip route 命令来指定某些路由规则。 http://linux-ip.net/html/tools-ip-route.html是观察细节的好地方。

这也称为“基于源的路由”。它与“tc”命令(流量整形)一起使用将实现您想要的效果...这是可以做到的,但对于拥有数百个 ip 的 Linux 服务器上的新手管理员来说,这非常困难。

但是,某些程序(例如 wget 等)将允许您指定要使用的网络接口,因此您可以指定 -i eth0:0。

祝你好运!

答案2

cd /etc/sysconfig/network-scripts/

您的接口配置脚本将被命名为“ifcfg-eth0”、“ifcfg-eth1”等。编辑相应接口的脚本,更改“GATEWAY”设置。例如,在我的盒子上,“ifcfg-eth0”如下所示:

DEVICE=eth0
BOOTPROTO=static
ONBOOT=yes
IPADDR=74.201.152.166
NETMASK=255.255.255.255
GATEWAY=10.255.255.1

在您的例子中,从“ifcfg-eth0”文件中删除“GATEWAY”行并将其移动到“ifcfg-eth0:1”(将网关地址更改为适合该 NIC 的任何地址)。然后重新启动网络:

/etc/init.d/network restart

答案3

我希望将 CentOS 上的默认路由更改为别名接口“ eth0:1”应该可以使其按您希望的方式工作。

正确的传入解析的原因与您的 CentOS 配置无关;它由您的“ ”域名
的外部名称查找解析控制。 它解析为“ ”,因此您在那里获得传入连接。site123.com
123.123.123.2


更新:章节13.2.4:别名和克隆文件,接口配置文件CentOS 部署指南参考此网络配置为了设备别名

相关内容