群晖防火墙在此三条规则下如何允许 Docker 能 Ping 通并访问外部网络? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要把任何和邀请码有关的内容发到 NAS 节点。

邀请码相关的内容请使用 /go/in 节点。

如果没有发送到 /go/in,那么会被移动到 /go/pointless 同时账号会被降权。如果持续触发这样的移动,会导致账号被禁用。
Apol1oBelvedere
V2EX    NAS

群晖防火墙在此三条规则下如何允许 Docker 能 Ping 通并访问外部网络?

  •  
  •   Apol1oBelvedere 2023-01-13 21:29:16 +08:00 2836 次点击
    这是一个创建于 1026 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我的群晖防火墙策略如下:

    1. 允许局域网 192.168.1.1~255 访问;
    2. 允许大陆 IP 访问一些服务(已勾选各个 Docker 容器名称);
    3. 拒绝其他一切协议和 IP 访问;

    目前问题是 Docker 内 Bash 无法 ping 通外部域名 qq.com (导致 Docker Calibre-Web 的豆瓣刮削器插件获取信息失败),关闭第三条规则后则能 ping 通并获取数据。

    新增两条规则如下,仍无法 Ping 通,除非关闭第五条规则。

    1. 允许局域网 192.168.1.1~255 访问;
    2. 允许大陆 IP 访问一些服务(已勾选各个 Docker 容器名称);
    3. 允许所有 ICMP 协议访问;
    4. 允许所有 IGMP 协议访问;
    5. 拒绝其他一切协议和 IP 访问;

    该如何设置才行呢?

    9 条回复    2023-01-15 10:41:59 +08:00
    Apol1oBelvedere
        1
    Apol1oBelvedere  
    OP
       2023-01-13 21:58:48 +08:00
    下面是数据包监听:
    ~# tcpdump -i docker919c320 -nn
    tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
    listening on docker919c320, link-type EN10MB (Ethernet), capture size 262144 bytes
    21:56:56.751834 IP 172.17.0.2 > 8.8.8.8: ICMP echo request, id 170, seq 0, length 64
    21:57:01.766006 ARP, Request who-has 172.17.0.1 tell 172.17.0.2, length 28
    21:57:01.766136 ARP, Reply 172.17.0.1 is-at 02:42:39:7d:18:f5, length 28
    yaott2020
        2
    yaott2020  
       2023-01-14 10:28:59 +08:00 via Android
    能不能 ping ip ,还有,出站和入站没啥关系吧
    Apol1oBelvedere
        3
    Apol1oBelvedere  
    OP
       2023-01-14 11:09:40 +08:00
    @yaott2020 IP 也 ping 不通,我的群晖防火墙最后一条规则阻挡了大部分数据包,可能原因在这,但是我已经允许了 ICMP 协议了啊?
    yaott2020
        4
    yaott2020  
       2023-01-14 11:12:47 +08:00 via Android
    你的防火墙规则是入站还是出站
    Apol1oBelvedere
        5
    Apol1oBelvedere  
    OP
       2023-01-14 12:42:54 +08:00
    @yaott2020 群晖防火墙的设计和功能实现只管理入站,不管理出站。
    mmtromsb456
        6
    mmtromsb456  
       2023-01-14 17:45:14 +08:00
    看监听结果,容器内 dns 不是大陆的 dns,是直接用的 8.8.8.8,这在拒绝境外 IP 入站的防火墙规则下肯定拿不到解析结果吧
    Apol1oBelvedere
        7
    Apol1oBelvedere  
    OP
       2023-01-14 19:16:35 +08:00
    @mmtromsb456
    把规则调整为 ICMP 放第一条(即所有 IP 允许 Ping )还是不行,除非取消最后一条规则才行,现在问题是前四条规则还是没能放过 Ping 数据包。
    允许所有 ICMP 协议访问;
    允许所有 IGMP 协议访问;
    允许局域网 192.168.1.1~255 访问;
    允许大陆 IP 访问一些服务(已勾选各个 Docker 容器名称);
    拒绝其他一切协议和 IP 访问;
    mmtromsb456
        8
    mmtromsb456  
       2023-01-15 00:45:25 +08:00
    @Apol1oBelvedere #7 不是 icmp 的问题啊,要 ping 域名之前得先找 ns 解析,现在去 8888 的 dns 报文被拦截了吧
    Apol1oBelvedere
        9
    Apol1oBelvedere  
    OP
       2023-01-15 10:41:59 +08:00
    @mmtromsb456 谢谢您,在您的帮助下问题解决了。
    我之前也设置了允许 DNS 协议的 TCP 53 端口通过但无效,经过您的提示我再确认得知是 DNS 协议的 UDP 53 端口。添加到允许所有 IGMP 协议访问这条规则之后,就能 Ping 通了。
    关于     帮助文档     自助推广系统 &nbs;   博客     API     FAQ     Solana     5266 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 62ms UTC 08:33 PVG 16:33 LAX 00:33 JFK 03:33
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86