服务器双网卡同时用两个IP,核心是让每块网卡拥有独立IP,并让系统按源地址或目标网段选择正确出口。 只把两个IP填进系统往往不通,真正要处理的是默认路由、策略路由、ARP响应和云平台限制。
服务器双网卡怎么同时用两个ip?先分清三种场景
双网卡双IP不是一种固定配置,不同网段、同网段、双公网,处理方式完全不同。
- 异网段双网卡:最常见,比如eth0接公网,eth1接内网,两块网卡各有网关,但系统默认路由通常只能留一条。
- 同网段双网卡:两块网卡接同一VLAN,各配一个IP,看似简单,实际容易出现ARP冲突、回包乱走。
- 双公网双网卡:多出口负载或冗余,需要策略路由,必要时配合keepalived做VIP漂移。
据工信部公开的互联网基础资源相关统计,IPv4地址资源长期紧张,多IP复用和辅助IP是常见做法,服务器多网卡配置也遵循这个思路:先规划用途,再决定出口。
业内专家指出,多出口服务器最怕的不是地址配置,而是回包路径不一致,请求从eth1进来,回包却从eth0出去,连接就会被防火墙或对端丢弃。
异网段双网卡:各自配网关,但默认路由只能留一个
Linux下先看网卡名:
ip link show
给两块网卡配IP:
ip addr add 192.168.1.10/24 dev eth0 ip addr add 10.0.0.10/24 dev eth1 ip link set eth0 up ip link set eth1 up
默认路由走主出口,比如公网eth0:
ip route add default via 192.168.1.1 dev eth0
然后给eth1建独立路由表,编辑/etc/iproute2/rt_tables,加入:
100 eth1
写入明细路由和默认路由:
ip route add 10.0.0.0/24 dev eth1 src 10.0.0.10 table eth1 ip route add default via 10.0.0.1 dev eth1 table eth1 ip rule add from 10.0.0.10 table eth1
验证源地址选路:
ip route get 8.8.8.8 from 10.0.0.10
如果输出走eth1和10.0.0.1,说明策略路由生效。
Windows Server则在“网络连接”里打开网卡属性,进入IPv4高级设置,添加第二个IP,再用route add加静态路由:
route add 10.0.0.0 mask 255.255.255.0 10.0.0.1 metric 10 -p route add 0.0.0.0 mask 0.0.0.0 192.168.1.1 metric 20 -p
接口跃点数要分清,内网明细路由metric低,默认公网路由metric高,避免两个默认网关打架。
同网段双网卡:别让两个网卡抢同一个广播域
同网段双网卡更容易出问题,系统可能从eth0和eth1都响应ARP,交换机也分不清该把流量发给谁。
Linux下可调整内核参数,编辑/etc/sysctl.conf:
net.ipv4.conf.all.arp_ignore = 1 net.ipv4.conf.all.arp_announce = 2 net.ipv4.conf.all.rp_filter = 2
执行:
sysctl -p
更稳的方案是bond或team,做active-backup,只保留一个活动网卡,做LACP,需要交换机配合端口聚合,如果只是多一个IP,单网卡加辅助IP反而简单。
行业共识认为,双网卡同网段并不天然等于高可用,反而容易引入ARP和路由抖动。
双网卡双IP怎么配置路由:Linux和Windows实操
配置路由前先明确目标:谁主动访问谁,回包走哪块网卡,公网访问、内网管理、数据库同步,出口可能不同。
Linux用iproute2做源地址策略路由
假设拓扑:
- eth0:203.0.113.10/24,网关203.0.113.1
- eth1:192.168.10.20/24,网关192.168.10.1
要求公网默认走eth0,来自192.168.10.20的流量走eth1。
echo "100 eth1" >> /etc/iproute2/rt_tables ip route add 192.168.10.0/24 dev eth1 src 192.168.10.20 table eth1 ip route add default via 192.168.10.1 dev eth1 table eth1 ip rule add from 192.168.10.20 table eth1
持久化可以写进NetworkManager dispatcher,或用netplan的routing-policy,重启后执行:
ip rule show ip route show table all
看规则和路由表是否还在。
Windows Server配置辅助IP与静态路由
打开ncpa.cpl,右键网卡,属性,IPv4,高级,在“IP地址”里添加第二个IP,默认网关只在一个网卡上配。
查看路由:
route print
添加持久路由:
route add 192.168.10.0 mask 255.255.255.0 192.168.10.1 -p
PowerShell也可以:
New-NetRoute -DestinationPrefix "192.168.10.0/24" -NextHop "192.168.10.1" -InterfaceIndex 12 -RouteMetric 10 -PolicyStore PersistentStore Set-NetIPInterface -InterfaceAlias "以太网 2" -InterfaceMetric 20
验证双IP出口是否按预期
Linux常用:
ping -I eth0 8.8.8.8 ping -I 192.168.10.20 8.8.8.8 curl --interface 192.168.10.20 ifconfig.me tcpdump -i eth1 -nn
Windows常用:
ping -S 192.168.10.20 8.8.8.8
如果源IP通了,目标也通,但回包从错误网卡出去,查策略路由和防火墙。ip route get比猜更快。
内网外网双网卡配置实例:业务口和管理口分离
一台服务器,eth0接公网,eth1接内网管理,业务流量走公网,SSH管理走内网,配置顺序:
- 先配两块网卡IP。
- 公网网卡配默认路由。
- 内网网卡只配内网明细路由。
- 用
ip rule让内网管理IP的流量走内网表。 - 防火墙限制eth1只监听管理端口,比如SSH、监控。
- 云服务器要先在控制台绑定弹性网卡或辅助私网IP,再进系统配置。
如果内网机器还要通过这台服务器访问公网,需要开启转发:
sysctl -w net.ipv4.ip_forward=1 iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -o eth0 -j MASQUERADE
云环境不要自己配默认网关,云厂商的元数据和虚拟路由会接管,配错会断网。
单网卡多IP和双网卡双IP区别:别为了多一个IP瞎折腾
| 对比项 | 单网卡多IP | 双网卡双IP |
|---|---|---|
| 硬件 | 一块网卡 | 两块网卡 |
| 故障域 | 共享 | 可分离 |
| 带宽 | 共享 | 可聚合或分流 |
| 路由 | 简单 | 常需策略路由 |
| 典型场景 | 测试、VIP、少量服务 | 内网外网隔离、多出口、管理面分离 |
| 成本 | 低 | 网卡、交换机端口、IP成本 |
如果只是多一个IP,单网卡加辅助IP更省事,如果要求网络隔离、冗余、吞吐,双网卡才有意义。
服务器双网卡双IP需要额外花钱吗?北京机房与云服务器差异
物理机双网卡通常主板集成,硬件不一定额外花钱,额外公网IP要收费,北京机房IP资源紧张,价格和库存看运营商政策,云服务器弹性网卡、辅助私网IP多数不单独收费,弹性公网IP和带宽按量或按月收费。
- 北京地域:公网IP资源紧,BGP线路成本高,备案和机房政策影响大。
- 普通云地域:辅助私网IP通常免费,多弹性网卡受实例规格限制。
- 物理机房:双网卡免费,但多公网IP、交换机端口、VLAN打标可能收费。
先确认云厂商文档和机房工单,再决定双网卡还是单网卡多IP。
Q&A:服务器双网卡怎么同时用两个ip常见问题
服务器双网卡怎么同时用两个ip,必须配两个默认网关吗?
不必须,两个默认网关会冲突,通常只保留一个默认网关,另一条线路用明细路由或策略路由,需要按源IP选路时,用ip rule配合独立路由表。
双网卡双IP怎么配置路由后仍不通,先查什么?
先查ip addr、ip route show table all、ip rule,再看rp_filter是否过严,然后查交换机VLAN、云安全组、本机防火墙,最后用tcpdump抓包,确认请求和回包分别走哪块网卡。
服务器双网卡双IP需要额外花钱吗?
物理机额外公网IP通常收费,云服务器辅助私网IP多数不单独收费,弹性公网IP和带宽收费,北京等公网IP资源紧张地域,具体费用和库存以机房或云厂商实时报价为准。
服务器双网卡同时用两个IP,不是把地址填进去就结束。 同网段防ARP,异网段做策略路由,云上先看弹性网卡限制,把源地址路由和验证命令跑通,双IP才能稳定共存。
首发原创文章,作者:王坚,如若转载,请注明出处:https://idctop.com/article/734632.html




