V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
heider
V2EX  ›  宽带症候群

关于家庭软路由直通的疑问

  •  
  •   heider · 183 天前 · 2315 次点击
    这是一个创建于 183 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我目前的网络结构如下:

    光猫(桥接)-> 双网口 Debian 系统(拨号+网络共享)-> 无线路由器 -> 家庭设备

    目前已实现:
    1.光猫端支持 IPV6
    2.Debian 通过 en3s0 拨号能正常获取到 IPv6 ,且可通过外网访问
    3.无线路由器可以通过 en2s0 的网络共享获取到 IPv4 且正常访问外网,但是无法获取到 ipv6 ( debian 通过 dnsmasq 实现 dns 服务和 dhcp 服务)
    未实现
    1.无线路由器下设备无法访问 IPv6 网络
    2.在 Debian 内无法访问无线路由器的后台( en2s0 ip:10.42.0.1 无线路由器 ip:10.42.0.136 ),也无法访问路由器内设备

    我看很多 all in one 的教程都是使用 pve 等虚拟化系统,在虚拟化系统内安装专业的软路由系统进行拨号&网络桥接

    疑问点:
    pve 虚拟机内拨号后,其他设备也能通过桥接网络上网吗?
    pve 主机 也能通过虚拟机内的拨号进行上网吗?
    无线路由器下的设备和 pve 虚拟机可以互相访问吗?
    21 条回复    2023-11-25 13:55:55 +08:00
    sun82kg
        1
    sun82kg  
       183 天前
    1 、能
    2 、能
    3 、可以(设置静态路由即可)
    heider
        2
    heider  
    OP
       183 天前
    @sun82kg 感谢解答, 晚上下班上 pve 试试
    ranaanna
        3
    ranaanna  
       183 天前 via iPhone   ❤️ 1
    虚拟机和实体机是一样的,你的未实现并不能通过虚拟机实现。解决的办法其实很简单,Debian en2s0 新增 radvd 服务回应 ipv6 本地链路和路由请求,ipv6 是不会凭空来的。无线路由器需要允许来自 wan 口登录。路由器内部设备无法访问,完全是正常的事情(不然要路由器何用),建议不要用路由器 wan 口,把它当交换机用
    ranaanna
        4
    ranaanna  
       183 天前 via iPhone
    你的 Debian 路由器完全已经是只差临门一脚了,何必再用虚拟机装那些乱七八糟的软路由“系统”
    chairuosen
        5
    chairuosen  
       183 天前   ❤️ 1
    未实现 2 是因为你是从 wan 口访问的路由器后台,后台只能在 lan 侧访问,路由器内设备如果是另一个子网,需要在 debian 配置路由表,无线路由的 IP 路由到无线路由所在 wan 口的 ip 上
    uion
        6
    uion  
       183 天前   ❤️ 1
    pve lxc
    https://github.com/xYx-c/build-openwrt
    你可以看看我的方案
    ranaanna
        7
    ranaanna  
       183 天前 via iPhone
    @chairuosen 不需要在 Debian 配置路由表(默认就有),是需要在路由器上配置 ip 转发或 dnat
    chairuosen
        8
    chairuosen  
       183 天前
    @ranaanna ? debian 是上层子网的网关,它怎么知道下层子网网关设备是谁呢
    heider
        9
    heider  
    OP
       183 天前
    @ranaanna 感谢,我先配置一下 debian 试一试,想换软路由系统还是因为自己不太会配置网络的原因。
    ranaanna
        10
    ranaanna  
       183 天前 via iPhone
    @chairuosen 路由器的作用是所有内网设备共享一个外网 ipv4 地址,所以对于 Debian 来说,所有路由器内网设备的访问都应该通过那个地址。抱歉前面说错了,应该是端口转发不是 ip 转发
    chairuosen
        11
    chairuosen  
       183 天前
    @ranaanna 很明显 OP 不是,他使用路由器应该是两层子网,两个网关。因为他访问路由器 IP 不通,那他路由器连 debian 肯定是 wan 而不是 lan
    heider
        12
    heider  
    OP
       183 天前
    @chairuosen 是的 我连接的路由器的 wan 口
    sun82kg
        13
    sun82kg  
       183 天前   ❤️ 1
    2.在 Debian 内无法访问无线路由器的后台 ,这个问题

    需要在 debian 里设置 静态路由,通往路由的 ip 段。下一跳网关设置为路由器的 ip
    heider
        14
    heider  
    OP
       183 天前
    @sun82kg 配置了 router add -net 路由器网段 gw 路由器 ip 但是还是访问不了,估计是因为 wan 口访问没开
    yunisky
        15
    yunisky  
       183 天前
    这些问题的答案都是 能。
    具体实现方式就很多了
    ttvast
        16
    ttvast  
       182 天前
    你需要通过 dhcp-pd 获得 ipv6 子网然后才能让内网设备获得 v6 地址。
    或者你设置 nat6

    你需要将无线路由器设置成 ap 模式,或者无线路由器关闭 dhcp 服务器,将 linux 路由器的网线连接到无线路由器的 lan 口。

    如果你没有设置好无线路由器,那么你的 v6 地址也无法分配到内网设备上去。
    aeron
        17
    aeron  
       182 天前 via iPhone
    @uion 老哥,咨询个问题,pve8 的时候,可以使用 lxc 安装 5.x 内核的 openwrt 吗
    heider
        18
    heider  
    OP
       182 天前
    @ttvast 感谢! 我已经切换为 pve6 了
    uion
        19
    uion  
       181 天前
    @aeron 可以,lxc 安装的 openwrt 会直接共用宿主机 pve 的内核,你所说的 5.x ,最终运行会显示 pve8 的 6.x 了
    aeron
        20
    aeron  
       181 天前
    @uion #19 这就有个问题了,openwrt 是 5.15 内核的,装上去后提示找不到合适的内核,然后不能用,请问这个怎么解决
    uion
        21
    uion  
       180 天前
    @aeron lxc 就是所有容器都会共用同一个内核,只要 openwrt 编译的 cpu 架构和你 pve 宿主机的架构是一样的,就能直接运行,这样的情况大概是你 openwrt 和 pve 宿主机 cpu 架构不一样。假如你宿主机的架构是 x86_64 ,你可以试试我的 openwrt 仓库固件,我也是使用 v22.03 ,虚拟机使用也是 5.x 内核,但是用 lxc 运行就是 6.x 内核
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2753 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 12:37 · PVG 20:37 · LAX 05:37 · JFK 08:37
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.