You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CentOS 7下配置10.70.100.0/24网段用户通过eth1访问IPPBX的路由方案

CentOS 7下配置10.70.100.0/24网段用户通过eth1访问IPPBX的路由方案

嗨,看了你的网络配置信息,我来帮你一步步实现需求:让10.70.100.0/24网段的用户(包括你的CentOS 7主机本身)访问IPPBX时,流量通过eth1接口传输。

首先先贴出你的网络配置,方便后续参考:

eth0(LAN接口):

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
inet 10.70.100.7  netmask 255.255.255.0  broadcast 10.70.100.255
inet6 fe80::4f57:e7c0:4e6a:6c2a  prefixlen 64  scopeid 0x20<link>
ether 50:6b:8d:a6:58:93  txqueuelen 1000  (Ethernet)
RX packets 588935  bytes 43189679 (41.1 MiB)
RX errors 0  dropped 5  overruns 0  frame 0
TX packets 2779  bytes 218333 (213.2 KiB)
TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

eth1(IPPBX接口):

eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
inet 10.89.79.155  netmask 255.255.255.248  broadcast 10.89.79.159
inet6 fe80::333d:b66a:ff:374d  prefixlen 64  scopeid 0x20<link>
ether 50:6b:8d:98:59:03  txqueuelen 1000  (Ethernet)
RX packets 404739  bytes 103605341 (98.8 MiB)
TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

nmap扫描结果:

  • eth0开放端口:22/tcp(ssh)、25/tcp(smtp)、80/tcp(http)、443/tcp(https)、3306/tcp(mysql)
  • eth1开放端口:22/tcp(ssh)、25/tcp(smtp)、80/tcp(http)、443/tcp(https)、3306/tcp(mysql)、5060/tcp(sip)、5061/tcp(sip-tls)

前提确认

首先确认IPPBX处于eth1所在的10.89.79.152/29网段(因为eth1的子网掩码是255.255.255.248,对应29位掩码),并且你已经能通过eth1正常ping通IPPBX的地址。


场景一:让CentOS 7主机自身访问IPPBX走eth1

如果只是你的CentOS 7机器本身需要通过eth1访问IPPBX,默认情况下同网段流量会优先走对应接口,但如果存在路由冲突,你可以手动指定静态路由:

1. 临时配置(重启后失效,用于测试)

直接执行以下命令:

# 如果你知道IPPBX的具体IP(比如10.89.79.156),添加单IP路由
ip route add 10.89.79.156/32 dev eth1

# 如果要让整个IPPBX网段的流量都走eth1,用这条
ip route add 10.89.79.152/29 dev eth1

2. 永久配置(重启后依然生效)

编辑/etc/sysconfig/network-scripts/route-eth1文件(不存在的话直接新建),添加以下内容二选一:

# 单IPPBX地址路由
10.89.79.156/32 dev eth1

# 整个IPPBX网段路由
10.89.79.152/29 dev eth1

保存后重启网络服务生效:

systemctl restart network

场景二:让10.70.100.0/24网段的其他用户通过这台CentOS 7访问IPPBX

如果是同网段的其他机器需要通过你的CentOS 7主机中转访问IPPBX,需要开启IP转发并配置相关规则:

1. 开启IP转发

临时开启(重启后失效):

echo 1 > /proc/sys/net/ipv4/ip_forward

永久开启:编辑/etc/sysctl.conf,修改或添加一行:

net.ipv4.ip_forward = 1

执行以下命令让配置立即生效:

sysctl -p

2. 配置路由规则

在CentOS 7上确保10.70.100.0/24的流量能正常转发到eth1:

# 临时添加路由
ip route add 10.70.100.0/24 dev eth0

# 永久添加,编辑route-eth0文件
echo "10.70.100.0/24 dev eth0" >> /etc/sysconfig/network-scripts/route-eth0

同时,需要在10.70.100.0/24网段的其他用户机器上,设置这台CentOS 7的eth0地址(10.70.100.7)为访问IPPBX网段的网关。

3. 防火墙配置(可选,确保流量通行)

如果你的CentOS 7开启了firewalld,需要允许转发和SIP协议的流量:

# 允许地址伪装(转发必备)
firewall-cmd --add-masquerade --permanent
# 开放IPPBX常用的SIP端口
firewall-cmd --add-port=5060/tcp --add-port=5061/tcp --permanent
# 重启防火墙生效
firewall-cmd --reload

验证配置是否生效

完成配置后,用以下命令验证:

# 查看当前路由表,确认新增的路由规则存在
ip route show

# 测试访问IPPBX,追踪流量路径,确认走eth1接口
traceroute 10.89.79.156

备注:内容来源于stack exchange,提问作者DevDon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.20 09:54:32