Я использую следующий маршрут на моем хост-компьютере, чтобы передать весь свой трафик на сервер NGINX, работающий на порту 8080.
-A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
К сожалению, когда у меня включено это правило, все контейнеры LXD (LXC для Ubuntu) не могут использовать:
apt-get update
поскольку он разрешает репозитории как мой домен.
Могу я как-то предотвратить это?
Вы перенаправляете весь трафик tcp / 80 своим правилом.
Чтобы перенаправить только тот трафик, который вам нужен, вы должны указать интерфейс или IP-адрес. Например, вместо этого вы можете использовать:
-A PREROUTING -i $MY_WAN_INTERFACE -p tcp --dport 80 -j REDIRECT --to-port 8080
Или, если вам нужно также перенаправить часть вашего сетевого трафика, вы можете написать:
-A PREROUTING -d $MY_PUBLIC_IP -p tcp --dport 80 -j REDIRECT --to-port 8080
-A PREROUTING -d $MY_PRIVATE_IP -p tcp --dport 80 -j REDIRECT --to-port 8080