298 字
1 分钟
Docker 的网络配置方案
由于当前设备都是IPV6动态解析,很容易造成公网端口泄漏
方案是创建一个自定义的桥接网络用来容器内通过主机名来相互访问
- 以飞牛的界面为示例,Docker为局域网内的PXE服务器iventoy:

- SSH命令开启网卡混杂模式:(eth0是你使用的网口)
ifconfig eth0 promisc- SSH命令创建macvlan网口:
docker network create -d macvlan --subnet=192.168.1.0/24 --gateway=192.168.1.1 --ipv6 --subnet=fd0d:7eb5:2afd::/64 --gateway=fd0d:7eb5:2afd::1 -o parent=eth0 macvlan- Docker Compose:
services: iventoy: image: szabis/iventoy:latest container_name: iventoy hostname: iventoy restart: always privileged: true networks: bridges: null macvlan: ipv4_address: 192.168.1.55 #局域网内没被占用的IP,访问后台网页就输入这个IP environment: - AUTO_START_PXE=true# ports:# - "67:67/udp" # DHCP Server# - "69:69/udp" # TFTP Server# - "10809:10809" # NBD Server (NBD)# - "16000:16000" # PXE Service HTTP Server (iVentoy PXE Service)# - "26000:26000" # PXE GUI HTTP Server (iVentoy GUI) volumes: - /path/to/data:/opt/iventoy/data - /path/to/iso:/opt/iventoy/iso - /path/to/log:/opt/iventoy/log - /path/to/user:/opt/iventoy/user
networks: bridges: driver: bridge external: true macvlan: external: true这样就做到在主机下,不占用主机端口也不会导致端口被外网访问了
这时候就有人要问了,那第一个bridge有什么用呢?
答:第一个bridge是我用NGINX反向代理加HTTPS访问用的,全都是HTTPS加密是不是很棒?
Docker 的网络配置方案
https://blog.zco.ltd/posts/01/dockernet/ 部分信息可能已经过时









