docker 学习笔记--端口限制时,双网卡解决资源问题

一、问题介绍

 有一服务想多应用部署在一台主机上,但服务端口是冲突的,由于另外的接入系统端口是写死的,导致应用端口不能修改;

同时这台主台有多张网卡,想借助多网卡完成端口的分配,服务采用docker部署,要求同时支持ipv6 v4

 

二、技术尝试

首先,在docker 中重新创建一网桥

docker network create --subnet=172.18.0.0/16 --opt "com.docker.network.bridge.name"="docker1"  docker1

上述命令可以指定子网段,和网桥名称,网桥名称 --opt,可以ifconfig中查看可以理解的名称,否则显示br开头的名称

当然也可以不指定,使用docker network create ens1 

子网是递增的

其次,绑定ip 端口,解决流量入口,同时也可指定ipv6地址

docker run --name test  --net test -p ip:port:port

docker run --name test2  --net ens1 -p ip:port:port

最后,解决出口流量, 这个是让docker 某个网桥全部走指定的ip

iptables -t nat -I POSTROUTING -p all -s 172.18.0.0/16 -j SNAT --to-source 10.2.0.15

iptables规则:

规则表的先后顺序:raw→mangle→nat→filter

 

规则链的先后顺序:

入站顺序:PREROUTING→INPUT

出站顺序:OUTPUT→POSTROUTING

转发顺序:PREROUTING→FORWARD→POSTROUTING

 

参考资料:

https://www.jb51.net/article/137337.htm

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值