启用 DHCP 的永久传出 IP 地址

启用 DHCP 的永久传出 IP 地址

我在使我的传出 IP 地址配置永久化时遇到一些问题。我用谷歌搜索了很多,但没有找到适合我的配置。

假设我的网络是 192.168.1.0/24,默认网关是 192.168.1.1。这是我的带有 NAT 和公共 IP 地址 1.2.3.1 的路由器。托管提供商将另一个 IP 地址 1.2.3.4 路由到此 IP 地址,该地址进一步路由到我的服务器,其私有 IP 地址 192.168.1.17 由 DHCP 静态分配。默认网关也通过 DHCP 服务器发布。在我的例子中,IP 地址 1.2.3.4 被视为服务器公共 IP 地址,服务器传出通信必须从该 IP 地址开始。

因此,如果我这样做:ip route add default via 192.168.1.1 src 1.2.3.4我可以访问互联网,并且如果我执行curl ipinfo.io,我的公共IP地址是1.2.3.4。

因此,为了使此更改永久生效,我添加了:

[robi@centos7-1 ~]$ cat /etc/sysconfig/network-scripts/route-ens160
default via 192.168.1.1 src 1.2.3.4

[robi@centos7-1 ~]$ cat /etc/sysconfig/network-scripts/ifcfg-ens160
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=no
noIPV4_FAILURE_FATAL=no
IPV6INIT=no
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME=ens160
UUID=755cd596-ce8c-4798-8816-4e19b255ae38
DEVICE=ens160
ONBOOT=yes
IPADDR=1.2.3.4
PREFIX=32

所以现在我不确定我是否做错了什么,或者不可能以这种方式使此配置永久存在。

重启后IP路由:

[robi@centos7-1 ~]$ ip route
1.2.3.4 dev ens160 proto kernel scope link src 1.2.3.4 metric 100
192.168.1.0/24 dev ens160 proto kernel scope link src 192.168.1.17 metric 100

ip Route add default via 192.168.1.1 src 1.2.3.4 之后的 IP 路由:

[robi@centos7-1 ~]$ ip route
default via 192.168.1.1 dev ens160 src 1.2.3.4
1.2.3.4 dev ens160 proto kernel scope link src 1.2.3.4 metric 100
192.168.1.0/24 dev ens160 proto kernel scope link src 192.168.1.17 metric 100

如果我设置DEFROUTE=yes并重新启动网络,我可以通过 192.168.1.17 访问互联网。本地 IP 地址 ipifno.io 告诉我 IP 地址 1.2.3.1(通过我的路由器进行 NAT 的 IP 地址),但我不想要这个。

那么,有没有一种解决方案可以使用 DHCP 服务器的本地 IP 地址进行设置?另外,是否可以通过 DHCP 服务器返回的本地网关以某种简单的方式路由此传出 IP 地址?

另外,是否可以通过 DHCP 选项 33 设置第二个 IP 地址(在我的例子中为 1.2.3.4)?

答案1

外部每个人的传出 IP 地址已经是 1.2.3.4 或 185.148.73.201,无需任何其他配置。

命令

ip route add default via 192.168.1.1 src 1.2.3.4

应该已经给你错误信息了

Error: Invalid prefsrc address.

您无需执行任何操作,也无法强制使用与路由器的公共地址不同的地址。

相关内容