真心求教 Debian 双网卡如何指定出入站

62 天前
 wonk

Debian12 双网卡 有各自网段和网关

如何指定 A 网卡入站 B 网卡出站呢

A 网卡有公网 ip 可以联通 B 网卡没有公网 ip

试了路由表还是搞不定 希望大佬指点

1132 次点击
所在节点    Debian
16 条回复
blueboyggh
62 天前
我回答不了楼主的问题,但是借问一下 debian12 如何设定网卡优先级?我按网上的设置了,只有 ipv4 生效,v6 不生效
hefish
62 天前
搜一下 LARTC 吧。
luoyide2010
62 天前
策略路由搞不定吗?话说 A 网口入站 B 网口出站,用不了吧,TCP 连接建立不起来
loyth06
62 天前
路由表应该可以吧,我试过 ip rule ,ip route 实现 A 进 A 出,B 进 B 出
PolarBears
62 天前
A 网卡不设置网关,只在 B 网卡设置网关试试?
moudy
62 天前
@luoyide2010 #3 路由给转就行
mrtanwen
62 天前
前段时间刚研究过差不多的需求,用了 iptables 的 uid-owner 标记一个用户然后配置 nat to-source 为你要出口 IP 这样这个用户下运行的程序就能 A 进 B 出
bingfengfeifei
62 天前
这种需求的场景是什么,你的设备是什么类型,类似路由器的网关设备?
听你需求,很像是 NAT 设备,在 A 上面暴露服务,然后转发到 B 网段。
这种情况下由于 A B 网段的路由不同,做一个 DNAT ,指向 B 的网段就实现了。

你的 A 有公网 IP ,流量能进来的前提是对方的目的 IP 是 A 的 IP ,而你要转到内网,就需要修改目的 IP 吧。

最好说一下具体的应用场景这样才好制定对策。
如果单纯的听你描述是一个特定条件选路的场景(我有点想象不出来具体应用方式),可能是策略路由去解决。
1. A 网卡 B 网卡使用策略路由表,每个网卡单独一张表,例如 A 网卡策略路由表 id 100 B 网卡 id 200
2. 在 iptables NAT 表 prerouting 链对会话打标记 例如 0x8888
3. 然后把 ip rule 里面根据 mark 去选择路由表
4. 注意 rp_filter 参数的调整,要开启松散反向路由的限制。
5. 还得注意反向流的问题
zealot0630
62 天前
挺难实现的,我这里有个 nftables 实现差不多功能,你可以参考一下

https://github.com/kghost/config/blob/master/services/debian/vpn/nft-policy-route
zealot0630
62 天前
原理就是用 ct 追踪这条链接应该走哪个链路,然后用 policy routing 选择不同路由表
cndns
62 天前
在网卡里面设置
metric 参数 具体谷歌搜索一下
wonk
62 天前
@bingfengfeifei 多谢 回复, 目的是运营商转化,A 卡在 Nat 下面可以端口映射,有公网 ip ,B 卡也是 Nat ,但是没有公网 ip ,希望实现 A 卡承接进站流量,然后转给 B 出站,这样可以用 B 的公网 ip 地址
cndns
62 天前
@wonk 你这种需求应该做不到的,运营商设备会检测数据包 源进源出
002jnm
62 天前
用 netplan 比较简单,配置 metric 就行了。给你个参考:
network:
version: 2
renderer: networkd
ethernets:
enp0s6:
addresses: [ 10.0.0.12/24 ]
routes:
- to: 0.0.0.0/0
via: 10.0.0.1
metric: 201
optional: true
nameservers:
addresses:
- "8.8.8.8"
enp1s0:
addresses: [ 10.0.0.15/24 ]
routes:
- to: 0.0.0.0/0
via: 10.0.0.1
metric: 202
optional: true
nameservers:
addresses:
- "8.8.8.8"
tool2dx
62 天前
我们公司也是双宽带接入,ip4 统一走电信宽带,ip6 统一走移动宽带,互不影响,多线程流量还能叠加,完美。
Heyzg
24 天前
老哥找到解决办法了吗

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1074397

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX