折腾本腾
新手教程:将 Docker 的自定义网络绑定到第二个网口 | JackieWu
00 分钟
2024-1-17
2024-3-2
type
status
date
slug
summary
tags
category
icon
password
URL
notion image
由于目前不少人习惯将 unRAID 的网关地址设置为旁路由(透明网关)的 IP 地址,以此来让 unRAID 可以走代理来使用。
关于 unRAID 的代理,大家可以了解博主的另一篇文章
但在这种使用方法下,unRAID 的所有流量都会发送给旁路由。比如说即使你给一个 qBittorrent Docker 容器设置了一个固定 IP 地址,那么这个 QB 容器也一样会将所有的下载请求发送给旁路由,从而可能会出现下载时走了代理服务器的可能。
关于单独给 Docker 分配一个网口的方法,博主在另一篇文章

1、实现条件

1.1、有第二个物理网口可以使用

1.2、从绑定中释放网口

(1)第二个网口不能绑定到“绑定成员”或者“桥接成员”中

notion image
取消第二个网口作为绑定成员
notion image
取消第二个网口作为桥接成员

(2)同时这个网口也不能绑定到 VFIO-PCI 中

notion image
notion image

2、设置方法

2.1、网络设置

notion image
此时你需要对 eth1 进行如下设置:
notion image
notion image
  1. 不需要“启用绑定”;
  1. 也不需要“启用桥接”;
  1. 如果你需要给 Docker 分配 IPV6 地址,那么这里可以选择“IPV4 + IPV6”,否则的话开启 IPV4 即可;
  1. 地址分配不需要开启。

2.2、Docker 自定义网络设置

notion image
notion image
notion image
notion image
  1. Docker 自定义网络类型:选择 Macvlan 。
  1. 主机访问自定义网络:不需要启用。
  1. 保留用户定义网络:如果你在使用 Docker 的时候使用了 Docker network create … 创建了自定义网络,那么你需要启动这里的设置,否则重启 unRAID 之后原先创建的网络会消失。
  1. 接口上 IPv4 自定义网络 eth0 (可选):这里指的是针对 eth0 也就是管理口的 Docker 自定义网络设置,由于我们启用了第二个网口来给到 Docker 去使用,所以不需要启用 eth0 的设置。
  1. 接口上 IPv4 自定义网络 eth1 (可选):启用并将子网设置为你的内网网段,例如 192.168.1.0/24 ,网关设置为主路由的 IP 地址(而不是旁路由的地址),DHCP 池可以启用也可以不启用。

3、给 Docker 容器使用第二个网口

notion image
在给 Docker 分配网络时只需要选择 Custom:eth1 并分配一个固定的 IP 地址即可,当 Docker 运行时就会使用第二个网口向外发送网络请求,所有的流量也会经过第二个网口出去。
可以看到,给 Docker 容器分配网络的方式是使用固定内网网段 IP ,我曾想实现第二个网口

评论
Loading...