Проблема может быть в контейнерах, которые вы устанавливаете с помощью docker-compose . По умолчанию для сервисов создается новая сеть в файле docker-compose.yml . Это приводит к тому, что у вас не только интерфейс docker0 с настройкой подсети 172.17.0.0/16 но и обычно другие интерфейсы 172.x.0.0/16.
Чтобы преодолеть это, вы должны добавить больше правил для ваших сетей:
$ iptables -t nat -A POSTROUTING ! -o br-XXX -s 172.YYY.0.0/16 -j MASQUERADE
где br-XXX - имя интерфейса, 172.YYY.0.0/16 - подсеть.
В качестве альтернативы, используйте одну сеть docker0 , имея в своем docker-compose.yml для каждого описанного сервиса:
network_mode: bridge