Cómo configurar DNS exclusivamente para un espacio de nombres de red en Linux


9

He creado un espacio de nombres de red en Linux.

Pensé que había un archivo resolv.conf para cada espacio de nombres creado, pero no es el caso en mi sistema. No tengo la siguiente ruta /etc/netns/namespace_name/resolv.conf .. La carpeta netns no existe.

Solo hay un resolv.conf (/etc/resolv.conf y otro reflejado en /run/resolv.conf). Cualquier cambio en este archivo afecta a todas las interfaces de red. ¿Hay alguna manera de usar DNS diferentes para el host y el espacio de nombres?

Respuestas:


11

Debe crear el directorio / etc / netns / _namespace_name_ usted mismo y colocar allí una versión diferente resolv.conf.


1
Sería /etc/netns/namespace-name/resolv.confusado automáticamente?
CMCDragonkai

¿Y esto también se puede usar para iptables?
CMCDragonkai

2
Se usará automáticamente porque la ruta completa anterior está montada ip netnsen /etc/resolv.conf, como se explica en la página de manual de ip netns man7.org/linux/man-pages/man8/ip-netns.8. html . Entonces, desde un espacio de nombres de red dado, /etc/resolv.conf es el archivo resolv.conf por espacio de nombres si y solo si se ha creado /etc/netns/namespace-name/resolv.conf. De lo contrario, una aplicación verá el resolv.conf de la máquina host, que podría no ser el comportamiento deseado.
Ricky Robinson
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.