收起左侧

局域网文件共享IP 异常

2
回复
261
查看
[ 复制链接 ]

1

主题

2

回帖

0

牛值

江湖小虾

2026-3-31 01:35:02 显示全部楼层 阅读模式

image.png

网口IP设置是10.168.1.4

image.png

image.png

但是网络文件共享的IP却都为172.17.0.1,这和Docker的网桥一样了,导致局域网无法挂载和访问共享文件,不知道怎么回事,之前一直正常用着的,突然就不行了,试过修改nfs-kernel-server的设置,但是还是不行。

有没有清楚其中原因的兄弟指教一下?感谢!

收藏
送赞
分享

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

1

主题

2

回帖

0

牛值

江湖小虾

2026-3-31 21:18:30 楼主 显示全部楼层
步骤 编辑 Samba 配置文件  bash sudo nano /etc/samba/smb.conf 在 [global] 段中添加(或修改)以下两行  ini interfaces = 10.168.1.4/24 enp3s0-ovs bind interfaces only = yes interfaces 可以指定 IP 段或网卡名,多个项用空格分隔。  bind interfaces only = yes 强制 Samba 只监听 interfaces 中列出的接口,避免它误回环到 127.0.0.1。  保存文件并重启 Samba 服务  bash sudo systemctl restart smbd 验证监听状态  bash sudo ss -tulpn | grep -E '139|445)' 此时应该看到类似以下输出,显示 10.168.1.4:445 和 10.168.1.4:139 处于监听状态:  text tcp   LISTEN 0      50      10.168.1.4:445     0.0.0.0:*    users("smbd",pid=xxx,fd=xx)) tcp   LISTEN 0      50      10.168.1.4:139     0.0.0.0:*    users("smbd",pid=xxx,fd=xx)) 从局域网其他设备测试  Windows:在资源管理器地址栏输入 \\10.168.1.4 并回车。  Mac:访达菜单栏“前往”→“连接服务器”,输入 smb://10.168.1.4。  2. 解决 Web 界面显示错误 IP 的问题 飞牛 NAS 管理界面显示的“连接方式”中 IP 地址为 172.17.0.1,这是 Docker 网桥 docker0 的 IP,而不是你的物理网卡 IP。出现这种情况通常是因为:  系统在获取本机 IP 时,默认选择了第一个非回环接口(docker0 往往排在物理网卡前面)。  但 这只是一个显示问题,并不影响实际连接。只要 SMB 服务正确监听了物理 IP,你就可以使用物理 IP 访问,不必理会界面上显示的 IP。  如果你希望界面显示正确的物理 IP,可以尝试调整网络接口顺序或修改 Docker 网桥的 IP 段(使其不与物理网段相同,并让物理网卡成为第一个非回环接口)。不过这样做并非必须,且可能涉及 Docker 配置改动,请谨慎操作。  (可选)修改 Docker 网桥 IP 段 如果你的 Docker 网桥 172.17.0.1 干扰了界面的 IP 显示,可以将其改为其他不与物理网段冲突的私有网段(例如 192.168.100.1/24)。但请注意:修改 Docker 网桥 IP 会重启 Docker 服务,所有容器网络将短暂中断。  编辑 /etc/docker/daemon.json(如果文件不存在则新建):  bash sudo nano /etc/docker/daemon.json 添加或修改 bip 参数:  json {   "bip": "192.168.100.1/24" } 确保 JSON 格式正确,如果有其他配置项,用逗号分隔。  重启 Docker:  bash sudo systemctl restart docker 重启后,docker0 的 IP 会变成 192.168.100.1,飞牛 NAS 界面可能会自动刷新为物理 IP(因为 192.168.100.0/24 与物理网段不同,系统可能不再优先选择它)。但这不是绝对保证,不同版本的飞牛系统行为可能不同。  3. 防火墙检查(如需) 如果你的 NAS 启用了防火墙(如 ufw),请确保放行 SMB 端口:  bash sudo ufw allow from 10.168.1.0/24 to any port 139,445 proto tcp 总结 核心问题:Samba 只监听 127.0.0.1,导致局域网无法访问 → 修改 /etc/samba/smb.conf,强制监听物理 IP。  次要问题:Web 界面显示错误的 IP 地址 → 不影响实际连接,直接使用物理 IP 访问即可。如介意,可尝试修改 Docker 网桥 IP 段。  操作完成后,局域网其他设备即可通过 10.168.1.4 正常访问 SMB 共享。  如果按上述步骤操作后仍有问题,请提供修改后的 /etc/samba/smb.conf 中 [global] 部分的内容,以及执行 sudo ss -tulpn | grep -E '139|445)' 的输出,以便进一步排查。

1

主题

2

回帖

0

牛值

江湖小虾

2026-3-31 21:19:01 楼主 显示全部楼层

步骤

  1. 编辑 Samba 配置文件
    bash

    sudo nano /etc/samba/smb.conf
    
  2. [global] 段中添加(或修改)以下两行
    ini

    interfaces = 10.168.1.4/24 enp3s0-ovs
    bind interfaces only = yes
    
    • interfaces 可以指定 IP 段或网卡名,多个项用空格分隔。
    • bind interfaces only = yes 强制 Samba 只监听 interfaces 中列出的接口,避免它误回环到 127.0.0.1
  3. 保存文件并重启 Samba 服务
    bash

    sudo systemctl restart smbd
    
  4. 验证监听状态
    bash

    sudo ss -tulpn | grep -E ':(139|445)'
    

    此时应该看到类似以下输出,显示 10.168.1.4:44510.168.1.4:139 处于监听状态:
    text

    tcp   LISTEN 0      50      10.168.1.4:445     0.0.0.0:*    users:(("smbd",pid=xxx,fd=xx))
    tcp   LISTEN 0      50      10.168.1.4:139     0.0.0.0:*    users:(("smbd",pid=xxx,fd=xx))
    
  5. 从局域网其他设备测试

    • Windows:在资源管理器地址栏输入 \\10.168.1.4 并回车。
    • Mac:访达菜单栏“前往”→“连接服务器”,输入 smb://10.168.1.4

2. 解决 Web 界面显示错误 IP 的问题

飞牛 NAS 管理界面显示的“连接方式”中 IP 地址为 172.17.0.1,这是 Docker 网桥 docker0 的 IP,而不是你的物理网卡 IP。出现这种情况通常是因为:

  • 系统在获取本机 IP 时,默认选择了第一个非回环接口(docker0 往往排在物理网卡前面)。
  • 这只是一个显示问题,并不影响实际连接。只要 SMB 服务正确监听了物理 IP,你就可以使用物理 IP 访问,不必理会界面上显示的 IP。

如果你希望界面显示正确的物理 IP,可以尝试调整网络接口顺序或修改 Docker 网桥的 IP 段(使其不与物理网段相同,并让物理网卡成为第一个非回环接口)。不过这样做并非必须,且可能涉及 Docker 配置改动,请谨慎操作。

(可选)修改 Docker 网桥 IP 段

如果你的 Docker 网桥 172.17.0.1 干扰了界面的 IP 显示,可以将其改为其他不与物理网段冲突的私有网段(例如 192.168.100.1/24)。但请注意:修改 Docker 网桥 IP 会重启 Docker 服务,所有容器网络将短暂中断。

  1. 编辑 /etc/docker/daemon.json(如果文件不存在则新建):
    bash

    sudo nano /etc/docker/daemon.json
    
  2. 添加或修改 bip 参数:
    json

    {
      "bip": "192.168.100.1/24"
    }
    

    确保 JSON 格式正确,如果有其他配置项,用逗号分隔。

  3. 重启 Docker:
    bash

    sudo systemctl restart docker
    
  4. 重启后,docker0 的 IP 会变成 192.168.100.1,飞牛 NAS 界面可能会自动刷新为物理 IP(因为 192.168.100.0/24 与物理网段不同,系统可能不再优先选择它)。但这不是绝对保证,不同版本的飞牛系统行为可能不同。


3. 防火墙检查(如需)

如果你的 NAS 启用了防火墙(如 ufw),请确保放行 SMB 端口:

bash

sudo ufw allow from 10.168.1.0/24 to any port 139,445 proto tcp

总结

  1. 核心问题:Samba 只监听 127.0.0.1,导致局域网无法访问 → 修改 /etc/samba/smb.conf,强制监听物理 IP
  2. 次要问题:Web 界面显示错误的 IP 地址 → 不影响实际连接,直接使用物理 IP 访问即可。如介意,可尝试修改 Docker 网桥 IP 段。
  3. 操作完成后,局域网其他设备即可通过 10.168.1.4 正常访问 SMB 共享。

如果按上述步骤操作后仍有问题,请提供修改后的 /etc/samba/smb.conf[global] 部分的内容,以及执行 sudo ss -tulpn | grep -E ':(139|445)' 的输出,以便进一步排查。

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则