之前用一直自建的 bridge ,但是客户端使用 ipv6 网络访问时,地址会在 docker 容器中转换成内部 ipv4 ,一般的使用上没什么问题,但总归不爽。听说 docker 开启容器内 ipv6 支持比较麻烦而且还有 bug 所以暂时不想折腾。
另一种方法是使用 host 模式,既支持 ipv6 ,性能也更高一些,缺点是不如 bridge 隔离性,即安全性好。
因为我也不清楚两种模式性能和安全性分别能差多少,以及实际使用下来哪个更可以忽略,不知道如何更好的取舍
。
个人建议根据具体情况决定,如果安全性要求较高,则使用 bridge 模式;如果性能和 IPv6 支持要求较高,则使用 host 模式。另外,也可以考虑使用 overlay 网络模式来平衡性能和安全性,并且支持 IPv6。