V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
Yiskiee
V2EX  ›  Linux

Debian12 端口在局域网无法访问

  •  
  •   Yiskiee · Jun 17, 2023 · 4450 views
    This topic created in 1052 days ago, the information mentioned may be changed or developed.

    最近从 Fedora38 换到了 Debian12. 虽说 Fedora 系列确实先进好用, 但实在有点难以忍受各种更新系统带来的小问题.

    由于很少接触 Debian 系的操作系统, 换到了 Debian12 后光是配置桌面系统以适应以前的感觉就搞了半天, 然后就遇到了这个端口问题.

    操作系统是 Debian 12 stable Gnome 桌面版 (ip: 192.168.1.8)

    我以普通用户的身份开了一个简单的网页服务放在 ~/.profile 中:

    nohup python3 -m http.server 8888 -d ~/Public >> ~/.pyserver.log 2>&1 &
    

    在本机浏览器中输入 127.0.0.1:8888 可以正常访问, pyserver.log 也有记录.

    但是同一网段的局域网设备 (手机和一台 win10 电脑) 却无法通过 192.168.1.8:8888 访问到网页. 查看 pyserver.log 也没有其他 ip 的记录.

    除此之外, 在这个 Debian12 电脑上用 LocalSend 可以发文件给其他设备, 但是手机和 win10 发到 Debian 时 LocalSend 会报错:

    DioError [unknown]: null
    Error: SocketException: No route to host
    (OS Error: No route to host, errno=133),
    address=192.168.1.8, port=46444
    

    而手机与 win10 互传没问题.

    如何才能解决这个端口的问题呢? 之前用的 Fedora38 就完全没有遇到过.

    Supplement 1  ·  Jun 27, 2023
    查了一下 history 发现是我主动安装了 firewalld.
    卸载完就没事了.
    16 replies    2023-06-22 08:54:28 +08:00
    kingfalse
        1
    kingfalse  
       Jun 17, 2023 via Android
    来加入 opensuse 吧。
    Yiskiee
        2
    Yiskiee  
    OP
       Jun 17, 2023
    @kingfalse 这个系统相比于 Fedora 有什么优势呢?
    RobberPhex
        3
    RobberPhex  
       Jun 17, 2023
    1. 可能只监听了 lo 网卡
    2. 可能防火墙( iptables/ufw )导致请求被拦截
    Yiskiee
        4
    Yiskiee  
    OP
       Jun 17, 2023
    @RobberPhex 尝试过使用 iptables -A INPUT -p tcp --dport 8888 -j ACCEPT
    但问题还是没有解决.
    如何判断只监听了 lo 网卡呢?
    choury
        5
    choury  
       Jun 18, 2023 via Android
    netstat -nlp
    Yiskiee
        6
    Yiskiee  
    OP
       Jun 18, 2023
    我使用 firewall-cmd --permanent --add-port=8888/tcp && firewall-cmd --reload 后成功在其他设备上访问到了 Debian 电脑上设置的网页.
    说明是防火墙阻止了请求, 可是该如何设置才能使想 LocalSend 这种应用软件在需要的时候允许请求呢?
    dode
        7
    dode  
       Jun 18, 2023
    这个问题在 fedora 上不存在吗
    @Yiskiee
    lrh3321
        8
    lrh3321  
       Jun 18, 2023
    LocalSend 应该是靠 UDP 广播 /组播来做发现的,传输估计是 TCP 的,看看作者有没有写清楚了
    lrh3321
        9
    lrh3321  
       Jun 18, 2023
    打开 LocalSend 看了下,配置里有 多播地址和端口号,应该防火墙放行就行了
    Yiskiee
        10
    Yiskiee  
    OP
       Jun 18, 2023
    @dode 没有遇到过
    Yiskiee
        11
    Yiskiee  
    OP
       Jun 18, 2023
    @lrh3321 确实可以这样设置, 我也用 firewall-cmd --permanent --add-port=53317/tcp && firewall-cmd --reload 设置成功了.
    可如果要专门为所有类似的传输软件都配置会很麻烦, 有没有一劳永逸的方法呢?
    lx0758
        12
    lx0758  
       Jun 18, 2023
    我没有装桌面环境, 一直以为 Debian 这么 Open, 不需要防火墙呢....
    lindas
        13
    lindas  
       Jun 18, 2023
    @Yiskiee 关闭防火墙?但感觉不安全
    f1ush
        14
    f1ush  
       Jun 18, 2023
    @Yiskiee #4 可以 `netstat -tnlp` 看一下端口监听的是什么地址(我猜是监听本地了
    Yiskiee
        15
    Yiskiee  
    OP
       Jun 18, 2023
    @f1ush 0.0.0.0
    aru
        16
    aru  
       Jun 22, 2023
    既然在局域网就关闭防火墙呗
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2864 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 58ms · UTC 06:24 · PVG 14:24 · LAX 23:24 · JFK 02:24
    ♥ Do have faith in what you're doing.