VPS,Ubuntu 20.04(云实例)
VPS具有2个公共IP映射到NIC(ens3)
最近几天,我试图为基于macvlan网络的docker容器分配一个公共IP。不知何故,我无法在Docker容器内部与外部网关建立Internet连接。无法ping或无法获得更新。
我已经添加了我遵循的步骤:
示例:
IP已映射到NIC(ens3)
IP 1: 12.14.28.245
IP 2: 12.14.28.246
网关:12.14.28.1
第1步:配置:01.netcfg.yaml
network:
version: 2
renderer: networkd
ethernets:
ens3:
dhcp4: no
dhcp6: yes
addresses:
- 12.14.28.245/24
- 12.14.28.246/24
gateway4: 12.14.28.1
步骤2:创建docker macvlan网络
docker network create --driver=macvlan --subnet=12.14.28.0/24-gateway=12.14.28.1 custom_net "-o parent=ens3
第3步:Docker运行
docker run -d --name $container_name --net=custom_net --ip=12.14.28.246 --dns=8.8.8.8 -itd--privileged -v /sys/fs/cgroup:/sys/fs/cgroup:ro jrei/systemd-ubuntu
步骤4:Docker网络检查custom_net
"Networks": {
"custom_net": {
"IPAMConfig": {
"IPv4Address": "12.14.28.246"
},
"Links": null,
"Aliases": [
"973e66960fb8"
],
"NetworkID": "2e8bf527ec65f97191028cfca43750611b7ab47d752098dcd9c7d765b5022ed3",
"EndpointID": "d2cd7373b8c010495eefb9e3ef2189e7c8df204db174644e068082db58cee1f1",
"Gateway": "12.14.28.1",
"IPAddress": "12.14.28.246",
"IPPrefixLen": 24,
"IPv6Gateway": "",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"MacAddress": "02:42:1f:0e:61:f6",
"DriverOpts": null
步骤5:docker exec -it $ container_name bash
ping google.com
但是我仍然无法从容器内部连接到互联网……。