ਹੋਸਟ ਦੇ VPN ਨਾਲ ਜੁੜਨ ਤੋਂ ਬਾਅਦ VirtualBox ਗੈਸਟ ਦਾ DNS ਟੁੱਟ ਜਾਂਦਾ ਹੈ
ਗੈਸਟ ਦਾ ਆਪਣਾ ਰਿਜ਼ੋਲਵਰ ਹੈ ਅਤੇ NAT DNS ਦਾ ਜਵਾਬ ਦੋ ਤਰੀਕਿਆਂ ਨਾਲ ਦੇ ਸਕਦਾ ਹੈ। ਐਡਾਪਟਰ ਮੋਡ, ਰਿਜ਼ੋਲਵਰ ਮਾਰਗ, ਹੋਸਟ ਰਿਜ਼ੋਲਵਰ ਮੋਡ ਅਤੇ VPN ਮੁੜ-ਕਨੈਕਸ਼ਨ ਉੱਤੇ ਚਾਰ ਜਾਂਚਾਂ।
VPN ਜੁੜਨ ਵਾਲੇ ਪਲ ਹੀ Windows ਹੋਸਟ ਉੱਤੇ ਅੰਦਰੂਨੀ ਐਪਲੀਕੇਸ਼ਨ ਰਿਜ਼ੋਲਵ ਹੁੰਦੀ ਹੈ, ਪਰ VirtualBox NAT ਪਿੱਛੇ ਦਾ Ubuntu ਗੈਸਟ ਅਜੇ ਵੀ ਉਹਨੂੰ ਲੱਭ ਨਹੀਂ ਸਕਦਾ। ਗੈਸਟ ਦਾ ਆਪਣਾ ਰਿਜ਼ੋਲਵਰ ਹੈ ਅਤੇ NAT ਐਡਾਪਟਰ DNS ਨੂੰ ਇੱਕ ਤੋਂ ਵੱਧ ਤਰੀਕਿਆਂ ਨਾਲ ਸੰਭਾਲ ਸਕਦਾ ਹੈ। ਗੈਸਟ ਦੇ ਰਿਜ਼ੋਲਵਰ ਨੂੰ ਜਨਤਕ ਸਰਵਰ ਨਾਲ ਬਦਲਣ ’ਤੇ ਆਮ ਵੈੱਬਸਾਈਟਾਂ ਚੱਲਦੀਆਂ ਹਨ ਅਤੇ ਨਿੱਜੀ ਨਾਮ ਫੇਲ ਹੁੰਦੇ ਹਨ, ਜੋ ਸਮੱਸਿਆ ਨੂੰ ਹੱਲ ਕਰਨ ਦੀ ਬਜਾਏ ਕਿਤੇ ਹੋਰ ਭੇਜਦਾ ਹੈ। ਚਾਰੇ ਜਾਂਚਾਂ ਕ੍ਰਮ ਵਿੱਚ ਕਰੋ ਅਤੇ ਜੋ ਪਹਿਲੀ ਨਾ ਮਿਲੇ ਉੱਥੇ ਰੁਕੋ।
ਪੁਸ਼ਟੀ ਕਰੋ ਕਿ ਤੁਸੀਂ ਕਿਹੜਾ ਐਡਾਪਟਰ ਮੋਡ ਡੀਬੱਗ ਕਰ ਰਹੇ ਹੋ
ਇਸ ਲੇਖ ਵਿੱਚ ਦੱਸੇ ਅਨੁਸਾਰ ਸਿਰਫ਼ ਸਾਧਾਰਨ NAT ਮੋਡ ਵਾਲਾ ਐਡਾਪਟਰ ਹੀ ਵਿਵਹਾਰ ਕਰਦਾ ਹੈ। ਬ੍ਰਿਜ ਐਡਾਪਟਰ ਆਪਣੀ ਪਛਾਣ ਨਾਲ ਭੌਤਿਕ ਨੈੱਟਵਰਕ ਉੱਤੇ ਬੈਠਦਾ ਹੈ, NAT ਨੈੱਟਵਰਕ ਆਪਣੀਆਂ DHCP ਅਤੇ DNS ਸੈਟਿੰਗਾਂ ਵਾਲਾ ਨਾਮਿਤ ਵਰਚੁਅਲ ਸਵਿੱਚ ਹੈ, ਅਤੇ ਗੈਸਟ ਦੇ ਅੰਦਰਲਾ VPN ਕਲਾਇੰਟ ਪੂਰੀ ਤਰ੍ਹਾਂ ਦੂਜਾ ਰਿਜ਼ੋਲਵਰ ਜੋੜਦਾ ਹੈ। ਪੜ੍ਹਨ ਤੋਂ ਪਹਿਲਾਂ ਮੋਡ ਦੀ ਪੁਸ਼ਟੀ ਕਰੋ, ਕਿਉਂਕਿ ਇਹਨਾਂ ਵਿੱਚੋਂ ਹਰ ਹਾਲਤ ਵਿੱਚ ਮੁਰੰਮਤ ਵੱਖਰੀ ਹੈ।
ਇੱਕ VM ਵੱਖ-ਵੱਖ ਮੋਡਾਂ ਵਿੱਚ ਦੋ ਐਡਾਪਟਰ ਰੱਖ ਸਕਦਾ ਹੈ, ਅਤੇ ਪ੍ਰਭਾਵਿਤ ਐਡਾਪਟਰ ਹਮੇਸ਼ਾ ਪਹਿਲਾ ਨਹੀਂ ਹੁੰਦਾ।
ਇਹ ਵੀ ਪੁਸ਼ਟੀ ਕਰੋ ਕਿ ਹੋਸਟ ਉਹ ਨਾਮ ਰਿਜ਼ੋਲਵ ਕਰਦਾ ਹੈ ਜਾਂ ਨਹੀਂ। ਟਨਲ ਚਾਲੂ ਰੱਖਦੇ ਹੋਏ ਹੋਸਟ ਉੱਤੇ ਉਹੀ ਐਪਲੀਕੇਸ਼ਨ ਖੋਲ੍ਹੋ, ਅਤੇ ਉਹੀ ਪੂਰਾ ਯੋਗ ਨਾਮ ਵਰਤੋ ਜੋ ਗੈਸਟ ਵਰਤੇਗਾ। ਜੇ ਹੋਸਟ ਵੀ ਫੇਲ ਹੋਵੇ, ਤਾਂ ਦੋਸ਼ ਗੈਸਟ ਦਾ ਨਹੀਂ ਹੈ ਅਤੇ ਵਰਚੁਅਲ ਨੈੱਟਵਰਕਿੰਗ ਦਾ ਕੋਈ ਬਦਲਾਅ ਇਹ ਠੀਕ ਨਹੀਂ ਕਰੇਗਾ।
ਗੈਸਟ ਦੇ ਰਿਜ਼ੋਲਵਰ ਰਾਹੀਂ ਇੱਕ ਨਾਮ ਦਾ ਪਿੱਛਾ ਕਰੋ
ਇੱਕ ਅੰਦਰੂਨੀ ਨਾਮ ਅਤੇ ਇੱਕ ਜਨਤਕ ਨਿਯੰਤਰਨ ਨਾਮ ਚੁਣੋ, ਫਿਰ ਦੋਵੇਂ ਦੋਵੇਂ ਥਾਵਾਂ ’ਤੇ ਪਰਖੋ। ਨਿੱਜੀ ਨਾਮ ਰਿਜ਼ੋਲਵ ਨਾ ਹੋਣ ਸਮੇਂ ਜਨਤਕ ਨਾਮ ਰਿਜ਼ੋਲਵ ਹੋਣਾ ਤਰੁੱਟੀ ਨੂੰ ਆਮ ਨਾਮ ਰਿਜ਼ੋਲਵਿੰਗ ਵਿੱਚ ਨਹੀਂ, ਨਿੱਜੀ ਮਾਰਗ ਵਿੱਚ ਦਰਸਾਉਂਦਾ ਹੈ। ਸਿਰਫ਼ ਨਿੱਜੀ ਨਾਮ ਪਰਖਣ ਨਾਲ ਟੁੱਟੇ ਰਿਜ਼ੋਲਵਰ ਅਤੇ ਟੁੱਟੇ ਰੂਟ ਵਿੱਚ ਫ਼ਰਕ ਨਹੀਂ ਕਰ ਸਕੋਗੇ।
ਗੈਸਟ ਦੇ ਅੰਦਰ ਦੇਖੋ ਕਿ ਰਿਜ਼ੋਲਵਰ ਅਸਲ ਵਿੱਚ ਕਿਸ ਲਈ ਕਨਫਿਗਰ ਹੈ। systemd-resolved ਚਲਾਉਂਦੇ Ubuntu ਗੈਸਟ ਵਿੱਚ ਹਰ ਲਿੰਕ ਦੀ ਸਥਿਤੀ ਆਏ ਸਰਵਰ ਦਿਖਾਉਂਦੀ ਹੈ, ਅਤੇ resolv.conf ਫਾਈਲ ਵਿੱਚ ਸਿਰਫ਼ ਸਟਬ ਪਤਾ ਹੋ ਸਕਦਾ ਹੈ, ਜੋ ਸਹੀ ਹੈ, ਸ਼ੱਕੀ ਨਹੀਂ। ਹੱਥ ਨਾਲ ਸੰਪਾਦਿਤ ਫਾਈਲ ਜਾਂ ਵੱਖਰਾ ਇਨਕ੍ਰਿਪਟਿਡ-DNS ਕਲਾਇੰਟ ਖੋਜਾਂ ਨੂੰ ਪੂਰੀ ਤਰ੍ਹਾਂ ਹੋਰ ਥਾਂ ਭੇਜ ਸਕਦੇ ਹਨ। ਬਦਲਣ ਤੋਂ ਪਹਿਲਾਂ ਜੋ ਮਿਲੇ ਉਹ ਲਿਖ ਲਓ।
resolvectl status
resolvectl query app.internal.exampleਇੱਥੇ ਰਿਜ਼ੋਲਵਿੰਗ ਨੂੰ ਪਹੁੰਚ ਤੋਂ ਅਲੱਗ ਕਰੋ। ਸੇਵਾ ਪਹੁੰਚ ਤੋਂ ਬਾਹਰ ਰਹਿੰਦੇ ਹੋਏ ਆਉਣ ਵਾਲਾ ਪਤਾ DNS ਨਹੀਂ, ਰਾਊਟਿੰਗ ਜਾਂ ਨੀਤੀ ਦਾ ਸਵਾਲ ਹੈ।
ਉਸ ਐਡਾਪਟਰ ਉੱਤੇ ਹੋਸਟ ਰਿਜ਼ੋਲਵਰ ਮੋਡ ਅਜ਼ਮਾਓ
VirtualBox ਦੇ NAT DNS ਵਿਕਲਪ ਵੱਖ-ਵੱਖ ਕਾਰਜਵਿਧੀਆਂ ਦੱਸਦੇ ਹਨ, ਅਤੇ ਹੋਸਟ ਦਾ ਆਪਣਾ ਰਿਜ਼ੋਲਵਰ ਟਨਲ ਨਾਲ ਬਦਲਦੇ ਹੀ ਇਹ ਫ਼ਰਕ ਮਹੱਤਵਪੂਰਨ ਹੋ ਜਾਂਦਾ ਹੈ। DNS ਪ੍ਰੌਕਸੀ ਗੈਸਟ ਦੀਆਂ ਬੇਨਤੀਆਂ ਉਹਨਾਂ ਸਰਵਰਾਂ ਤੱਕ ਭੇਜਦੀ ਹੈ ਜੋ ਉਹਨੂੰ ਦਿੱਤੇ ਗਏ। ਹੋਸਟ ਰਿਜ਼ੋਲਵਰ ਮੋਡ ਬੇਨਤੀਆਂ ਰੋਕਦਾ ਹੈ ਅਤੇ ਹੋਸਟ ਦੀ DNS API ਬੁਲਾਉਂਦਾ ਹੈ, ਅਤੇ VPN ਕਲਾਇੰਟ ਵੱਲੋਂ ਮੁੜ-ਕਨਫਿਗਰ ਕੀਤੇ Windows ਰਿਜ਼ੋਲਵਰ ਦਾ ਪਿੱਛਾ ਕਰਨ ਵਾਲਾ ਮੋਡ ਇਹੀ ਹੈ।
ਗਲਤ ਕਾਰਜਵਿਧੀ ਚਾਲੂ ਕਰੋ ਤਾਂ ਕਮਾਂਡ ਸਫਲ ਹੋਵੇਗੀ ਪਰ ਵਿਵਹਾਰ ਨਹੀਂ ਬਦਲੇਗਾ, ਜੋ ਦੁਪਹਿਰ ਗੁਆਉਣ ਦਾ ਉਲਝਣ ਭਰਿਆ ਤਰੀਕਾ ਹੈ।
VBoxManage modifyvm "work-ubuntu" --natdnshostresolver1 onVM ਦੀਆਂ ਮੌਜੂਦਾ ਸੈਟਿੰਗਾਂ ਲਿਖੋ, ਉਹਨੂੰ ਬੰਦ ਕਰੋ ਅਤੇ ਪਹਿਲਾਂ ਪੁਸ਼ਟੀ ਕੀਤੇ ਐਡਾਪਟਰ ਨੂੰ ਨਿਸ਼ਾਨਾ ਬਣਾਓ। ਵਿਕਲਪ ਦਾ ਆਖਰੀ ਅੰਕ ਸਥਿਰਾਂਕ ਨਹੀਂ ਸਗੋਂ ਐਡਾਪਟਰ ਨੰਬਰ ਹੈ, ਇਸ ਲਈ ਜਿਸ VM ਦਾ ਪ੍ਰਭਾਵਿਤ ਐਡਾਪਟਰ ਦੂਜਾ ਹੈ ਉਸ ਉੱਤੇ ਇਹ ਲਾਗੂ ਕਰਨਾ ਇੱਕ ਚੁੱਪ ਨਿਸ਼ਕਿਰਿਆ ਕਾਰਵਾਈ ਹੈ। ਗੈਸਟ ਸ਼ੁਰੂ ਕਰੋ ਅਤੇ ਉਹ ਰਿਜ਼ੋਲਵਰ ਕਨਫਿਗਰੇਸ਼ਨ ਵੇਖੋ ਜੋ ਉਹਨੂੰ ਅਸਲ ਵਿੱਚ ਮਿਲੀ, ਕਿਉਂਕਿ ਗੈਸਟ ਵਿੱਚ ਹੱਥ ਨਾਲ ਕੀਤੀ ਸੈਟਿੰਗ NAT ਪਰਤ ਜੋ ਵੀ ਦਿੰਦੀ ਹੈ ਉਸ ਉੱਤੇ ਭਾਰੀ ਪੈਂਦੀ ਹੈ। ਯਾਦ ਰੱਖੋ ਕਿ ਹੋਸਟ ਰਿਜ਼ੋਲਵਰ ਮੋਡ ਇਹ ਵੀ ਮੰਨਦਾ ਹੈ ਕਿ ਹੋਸਟ ਦਾ ਆਪਣਾ DNS ਮਾਰਗ ਹੀ ਉਹ ਹੈ ਜੋ ਤੁਸੀਂ ਸਾਂਝਾ ਕਰਨਾ ਚਾਹੁੰਦੇ ਸੀ।
VPN ਮੁੜ-ਕਨੈਕਸ਼ਨ ਦੌਰਾਨ ਉਹੀ ਟੈਸਟ ਦੁਹਰਾਓ
ਗੈਸਟ ਵਿੱਚ ਦੋਵੇਂ ਖੋਜਾਂ ਦੁਹਰਾਓ, ਫਿਰ ਅਸਲ ਐਪਲੀਕੇਸ਼ਨ ਖੋਲ੍ਹੋ ਅਤੇ ਉਹਨੂੰ ਸਰਟੀਫਿਕੇਟ ਖੁਦ ਜਾਂਚਣ ਦਿਓ। ਸਿਰਫ਼ ਪਤੇ ਉੱਤੇ ਅਧਾਰਿਤ ਟੈਸਟ ਨਾਮ ਰਿਜ਼ੋਲਵਿੰਗ ਅਲੱਗ ਕਰਨ ਲਈ ਲਾਹੇਵੰਦ ਹੈ ਅਤੇ ਕੰਮ ਕਰਦੇ TLS ਸੈਸ਼ਨ ਦੇ ਬਰਾਬਰ ਨਹੀਂ ਹੈ, ਇਸ ਲਈ ping ਉੱਤੇ ਨਾ ਰੁਕੋ। ਫਿਰ ਮਨਜ਼ੂਰ ਸਮੇਂ ਵਿੱਚ ਹੋਸਟ ਟਨਲ ਕੱਟੋ ਅਤੇ ਮੁੜ ਜੋੜੋ ਅਤੇ ਇੱਕ ਹੋਰ ਵਾਰ ਦੁਹਰਾਓ। ਜੋ ਵਿਵਹਾਰ ਸਿਰਫ਼ ਬੂਟ ਤੋਂ ਬਾਅਦ ਪਹਿਲੇ ਕਨੈਕਸ਼ਨ ਉੱਤੇ ਟਿਕਦਾ ਹੈ ਉਹ ਰਿਪੋਰਟ ਕਰਨ ਯੋਗ ਜੀਵਨ-ਚੱਕਰ ਸਮੱਸਿਆ ਹੈ, ਹੋਰ ਰਿਜ਼ੋਲਵਰ ਨਾਲ ਪਿੱਛਾ ਕਰਨ ਵਾਲਾ DNS ਭੇਤ ਨਹੀਂ।
ਜਨਤਕ ਰਿਜ਼ੋਲਵਿੰਗ ਦਾ ਚੱਲਣਾ ਇਹ ਸਾਬਤ ਨਹੀਂ ਕਰਦਾ ਕਿ ਨਿੱਜੀ ਬੇਨਤੀਆਂ ਤੁਹਾਡੀ ਨੀਤੀ ਵੱਲੋਂ ਮੰਗੇ ਮਾਰਗ ’ਤੇ ਹੀ ਰਹੀਆਂ।
ਜਦੋਂ ਹੋਸਟ ਰਿਜ਼ੋਲਵਰ ਮੋਡ ਕੁਝ ਨਹੀਂ ਬਦਲਦਾ, ਤਾਂ ਲਿਖੀ ਕਨਫਿਗਰੇਸ਼ਨ ਵਾਪਸ ਰੱਖੋ ਅਤੇ ਚਾਰ ਨਿਰੀਖਣ ਰੱਖੋ: ਹੋਸਟ ਨੇ ਕੀ ਵਾਪਸ ਦਿੱਤਾ, ਗੈਸਟ ਨੇ ਕੀ ਵਾਪਸ ਦਿੱਤਾ, ਐਡਾਪਟਰ ਮੋਡ ਅਤੇ ਰਿਜ਼ੋਲਵਰ ਦੀ ਸਥਿਤੀ। ਪਹੁੰਚ ਤੋਂ ਬਾਹਰਲਾ ਅੰਦਰੂਨੀ ਸਰਵਰ, ਹਾਈਪਰਵਾਈਜ਼ਰ ਟ੍ਰੈਫਿਕ ਬਾਹਰ ਰੱਖਣ ਵਾਲਾ ਫਿਲਟਰ ਅਤੇ ਗੈਸਟ ਵੱਲ ਦਾ ਓਵਰਰਾਈਡ ਹਰ ਇੱਕ ਨੂੰ ਵੱਖਰੀ ਸੋਧ ਚਾਹੀਦੀ ਹੈ। ਐਡਾਪਟਰ ਨੂੰ ਬ੍ਰਿਜ ਵਿੱਚ ਬਦਲਣਾ ਨੈੱਟਵਰਕ ਡਿਜ਼ਾਈਨ ਬਦਲਦਾ ਹੈ ਅਤੇ ਉਹ DNS ਰੀਸੈਟ ਨਹੀਂ ਹੈ।