Linux 物理机软路由配置

332 天前
 wdssmq

nuc4 装了 Linux Mint ,买了 usb 转网线接口想搞软路由,就完全没有头绪。。

如何使用 Debian/Ubuntu 等 Linux 做软路由(物理机版本,非虚拟机容器版) - 知乎

https://zhuanlan.zhihu.com/p/587068225

1 、目前光猫拔号,能否在这个前提下搞软路由?

2 、光猫已经拔号了,光猫 - nuc - 路由器 - 笔记本,nuc 能够连接外网,笔记本能内网访问到 nuc ,但是笔记本无法访问外网,理论上是应该修改路由器模式实现以 nuc 作为网关和 dhcp 服务器,然而 AP / 桥接模式怎么设置?

3 、如何验证 nuc 配置的 dhcp 是正确的?试过 光猫 - nuc - 笔记本 ,最终会变成「电缆拔出」。。

4 、恢复 光猫 - 路由器 - nuc ,局域网能够访问到 nuc ,但是 nuc 无外网,哪一步的操作导致了这个问题?固定使用 enp0s25 网卡连接光猫

下边是照着教程外加凭感觉改的各种配置。。。

network:
    version: 2
    renderer: networkd
    ethernets:
        enx207bd2cec82d:
            # 接光猫
            dhcp4: yes
            nameservers:
                addresses:
                - 223.5.5.5
                - 1.1.1.1
        enp0s25:
            # 接路由器
            dhcp4: no
            addresses:
            - 192.168.123.154/24
            dhcp4: false
            # 两个 dhcp4 是重复了么?

net.ipv4.ip_forward=1

subnet 192.168.123.0 netmask 255.255.255.0 {
  range 192.168.123.10 192.168.123.233;
  option routers 192.168.123.154;
  option domain-name-servers 223.5.5.5,1.1.1.1;
  option broadcast-address 192.168.123.255;
  default-lease-time 600;
  max-lease-time 7200;
}

# 原教程 -o 参数是 ppoe 拔号对应的网卡?我这边光猫拨号所以尝试了接光猫的网卡
sudo iptables -t nat -A POSTROUTING -o enx207bd2cec82d -j MASQUERADE

# 不知道是啥
sudo apt install iptables-persistent -y

2641 次点击
所在节点    路由器
14 条回复
fredcc
332 天前
软路由一般用 openwrt 系统,因为你问的这些问题基本开箱可用不用折腾。
当然喜欢用 Linux 发行版从零折腾请无视前一句。
fsdrw08
332 天前
用 vyOS 吧,路由防火墙专用系统,Linux 的
Ggmusic
332 天前
如果是 nuc 到笔记本,估计 systemd-networkd 需要配 dhcpd ,比如:
DHCPServer=

Takes a boolean. If set to "yes", DHCPv4 server will be started. Defaults to "no". Further settings for the DHCP server may be set in the [DHCPServer] section described below.

https://man.archlinux.org/man/systemd.network.5
yyzh
332 天前
1.同意要玩软路由请上 openwrt 别搞其他乱七八糟的.
2.无论在 windows 还是 linux 如果你做 pppoe 都会生成一张虚拟网卡的.你写 nat 规则得思考这方面
aphorism
332 天前
1. Linux 机器做软路由其实很简单。首先需要有两个网卡,一个是 WAN ,接入上级路由器,一个是 LAN ,为需要上网的设备提供网络连接。Linux 需要打开系统的转发功能并配置 iptables 来做网络 NAT 。你如果对 Linux 系统较熟悉,应该很快就能试成功。详细指示可以看这个贴子,https://blog.noviantech.com/2010/12/22/debian-router-gateway-in-15-minutes/

2. 一般在中国配置软路由的目标都是为了突破 GFW 的限制访问 Internet. 所以根据我和一些曾经在中国生活过的朋友的经验,建议光猫->中国网路由器->软路由->Internet 路由器。软路由其实就起一个建立安全隧道的作用,不要让它真的当路由器,所以在它下面再接一个专门的路由器为好。

3. 你设立软路由的目标是做什么,是看流媒体如 netflix, Disney+, MAX, Hulu 和 Sling ?还是为玩游戏如 XGPU 和 Battle.net? 不同的需求其实技术方案也有不同。如果目标是看流媒体,你可能需要一个二级软路由运行 Google One VPN 客户端,因为这是一个对流媒体最友好的 VPN 服务方案。如果是玩游戏则需要找一个延迟特别低的第一跳,例如韩国、日本、香港等国家的网络服务器作为第一跳出口。

4. 你的软路由有两个 IP 地址,一个是 WAN 口的,一个是 LAN 口的,至于你描述的 ssh 无法登录,也许是防火墙安全策略的问题。用 ss -tnlp 看看各个服务的侦听端口是不是正常,再用 ip addr list 看看网络地址。再用 iptables -L 看看防安全策略。一般这些没问题应该就没问题才对。
msg7086
332 天前
ermmm OPNSense 不好用吗?
laminux29
332 天前
楼主你知道 OpenWRT 是怎么来的嘛?世界上顶级公司,公司里的多少顶级工程师,花了大量的时间精力,才把 Linux 一点点打造为 OpenWRT ,而且要用好,至今要安装一大堆第三方 mod ,这些 mod ,每个都是作者花费大量时间去设计、实现、调试维护。

你现在想一个人把 Linux 发行版,打造成为网络设备,你就需要重复这个过程。

当然,没啥难度,只是有亿点工作量而已。
chitaotao
332 天前
光猫拨号,当然可以用软路由,但是可能出现多层 nat 的情况了,也不能完全控制网络
如果有软路由,还有一个路由器一般拿来做无线 ap 吧,将路由器设置成 ap 看看
如果想保留路由器作为软路由上级,那你可能想要配置的是旁路由/透明网关
我也是用 Debian 自己配置的软路由,但我用的是 ifupdown ,更手动,不知道 netplan 这边是怎么设置的
JohnSmith
332 天前
@laminux29 这个“亿点”主要工作是各种硬件的驱动和适配,尤其是资源紧张的硬件,如果用 x86 且性能足够的话也还好。
yyzh
331 天前
@JohnSmith ?人家研究 irqbalance,fast classifier,shortcut fe,dpdk,bpf,ebpf,xdp,bpfilter 等等这些你就全无视?另外人家还有给那些打游戏的做 full cone nat 的补丁.这些其他可没有.
hefish
331 天前
这不是就是配好了网卡,然后一句 iptables -t nat -A POSTROUTING -o 出口网卡 -j MASQUERADE 嘛。。。
当然,sysctl 里面 net.ipv4.ip_forward=1 这个要设置
EdmondGUO
331 天前
我的评价是专业的人做专业的事儿,放着 openwrt ROS ikuai 专业的系统不用,靠自己半吊子的 linux 和网络的知识储备搞网络,图啥呢,linux 技术洁癖?
wdssmq
331 天前
@EdmondGUO

明明有成品 NAS 为什么还有很多人 DIY 。。

明明有各种大厂网盘服务为什么还要自己架设?

明明有硬路由为什么还要搞软路由。。

明明。。。
EdmondGUO
331 天前
@wdssmq

DIY NAS 较成品 NAS 有成本和性能的优势

自己架设网盘有隐私和不被网盘捆绑的优势

软路由有全局 fq 内网穿透 多拨功能的优势

linux 物理机软路由有 在 V2EX 上水一贴的优势?😁

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

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

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

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

© 2021 V2EX