Docker ਦੀ pool ਓਵਰਲੈਪ ਗਲਤੀ VPN ਰੂਟ ਦੀ ਸਮੱਸਿਆ ਨਹੀਂ ਹੈ
ਇੱਕ ਗਲਤੀ ਅਲਾਟਮੈਂਟ ਦੌਰਾਨ ਹੁੰਦੀ ਹੈ, ਦੂਜੀ ਰੂਟ ਬਦਲਣ ਤੋਂ ਬਾਅਦ। ਕੰਟੇਨਰ ਪਤਿਆਂ ਜਾਂ ਟਨਲ ਨੂੰ ਛੂਹਣ ਤੋਂ ਪਹਿਲਾਂ IPAM ਸਬਨੈੱਟ ਪੜ੍ਹੋ।
Docker ਇਸ ਪਤਾ-ਥਾਂ ਵਿੱਚ pool ਦੂਜੇ ਨਾਲ ਓਵਰਲੈਪ ਹੋਣ ਦੇ ਸੁਨੇਹੇ ਨਾਲ ਨੈੱਟਵਰਕ ਬਣਾਉਣ ਤੋਂ ਇਨਕਾਰ ਕਰਦਾ ਹੈ, ਅਤੇ ਕੋਈ ਫੈਸਲਾ ਕਰਦਾ ਹੈ ਕਿ VPN ਰੂਟ ਹੀ ਕਾਰਨ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ। ਇੰਝ ਨਹੀਂ ਹੋ ਸਕਦਾ। ਉਹ ਗਲਤੀ ਉਦੋਂ ਪੈਦਾ ਹੁੰਦੀ ਹੈ ਜਦੋਂ pool ਅਲਾਟ ਹੋ ਰਿਹਾ ਹੋਵੇ, ਇੱਕ ਪੈਕੇਟ ਵੀ ਹੋਣ ਤੋਂ ਪਹਿਲਾਂ, ਅਤੇ ਹੱਥ ਨਾਲ ਬਣਾਏ ਕਰਨਲ ਰੂਟ ਦਾ ਇਸ ਉੱਤੇ ਕੋਈ ਅਸਰ ਨਹੀਂ ਹੁੰਦਾ। VPN ਇੱਕ ਕਦਮ ਬਾਅਦ ਅਹਿਮ ਹੁੰਦਾ ਹੈ, ਜਦੋਂ ਪਹਿਲਾਂ ਹੀ ਪਤਾ ਰੱਖਣ ਵਾਲਾ ਕੰਟੇਨਰ ਕੋਈ ਰੂਟ ਦਿਖਣ ਤੋਂ ਬਾਅਦ ਪਹੁੰਚ ਤੋਂ ਬਾਹਰ ਹੋ ਜਾਂਦਾ ਹੈ। ਦੋ ਸਮੱਸਿਆਵਾਂ, ਸਬੂਤਾਂ ਦੇ ਦੋ ਸੈੱਟ, ਅਤੇ ਇਹਨਾਂ ਨੂੰ ਮਿਲਾਉਣ ਨਾਲ ਅਜਿਹਾ ਬਦਲਾਅ ਹੁੰਦਾ ਹੈ ਜੋ ਕਿਸੇ ਨੂੰ ਵੀ ਠੀਕ ਨਹੀਂ ਕਰਦਾ।
ਇੱਕੋ ਜਿਹੀਆਂ ਦਿਸਦੀਆਂ ਦੋ ਗਲਤੀਆਂ
ਅਲਾਟਮੈਂਟ ਗਲਤੀ ਗਣਿਤਿਕ ਹੈ। Docker ਤੁਹਾਡੇ ਮੰਗੇ ਸਬਨੈੱਟ ਦੀ ਤੁਲਨਾ ਉਹਨਾਂ ਸਬਨੈੱਟਾਂ ਨਾਲ ਕਰਦਾ ਹੈ ਜੋ ਉਹ ਪਹਿਲਾਂ ਹੀ ਸੰਭਾਲਦਾ ਹੈ, ਕੋਈ ਕੱਟ ਲੱਭਦਾ ਹੈ ਅਤੇ ਇਨਕਾਰ ਕਰਦਾ ਹੈ। ਹਾਲੇ ਕੁਝ ਵੀ ਨਹੀਂ ਚੱਲ ਰਿਹਾ, ਇਸ ਲਈ ਕੋਈ ਰੂਟ ਨਹੀਂ, ਕੰਟੇਨਰ ਨਹੀਂ ਅਤੇ ਜਾਂਚਣ ਲਈ ਟ੍ਰੈਫਿਕ ਨਹੀਂ।
ਰਨਟਾਈਮ ਲੱਛਣ ਪਹੁੰਚ ਦਾ ਸਵਾਲ ਹੈ। ਕੱਲ੍ਹ ਜਵਾਬ ਦੇਣ ਵਾਲਾ ਕੰਟੇਨਰ ਹੁਣ ਜਵਾਬ ਨਹੀਂ ਦਿੰਦਾ, ਅਤੇ ਹੋਸਟ ਦੀ ਰੂਟਿੰਗ ਸਾਰਣੀ ਵਿੱਚ ਕੁਝ ਬਦਲ ਗਿਆ ਹੈ। ਕੰਟੇਨਰ ਅਜੇ ਵੀ ਆਪਣਾ ਪਤਾ ਰੱਖਦਾ ਹੈ; ਸਵਾਲ ਇਹ ਹੈ ਕਿ ਉਹ ਪਤਾ ਕਿਹੜਾ ਰਾਹ ਲੈਂਦਾ ਹੈ।
ਦੋਵੇਂ ਪਤਾ-ਯੋਜਨਾ ਦੀਆਂ ਸਮੱਸਿਆਵਾਂ ਹਨ। ਇਹਨਾਂ ਵਿੱਚੋਂ ਸਿਰਫ਼ ਇੱਕ Docker ਦੀ ਸਮੱਸਿਆ ਹੈ।
ਪਹਿਲਾਂ ਅਲਾਟ ਕੀਤੇ pool ਪੜ੍ਹੋ
ਨੈੱਟਵਰਕਾਂ ਦੀ ਸੂਚੀ ਬਣਾਓ ਅਤੇ ਉਹਨਾਂ ਦੀ ਜਾਂਚ ਕਰੋ ਜੋ ਕੱਟ ਸਕਦੇ ਹਨ। ਸਬਨੈੱਟ IPAM ਸੰਰਚਨਾ ਵਿੱਚ ਹੁੰਦਾ ਹੈ, ਅਤੇ ਜੁੜੇ ਕੰਟੇਨਰ ਵੱਖਰੇ ਤੌਰ 'ਤੇ ਸੂਚੀਬੱਧ ਹੁੰਦੇ ਹਨ:
docker network ls
docker network inspect EXISTING_NETWORK
ਉਸ ਸਬਨੈੱਟ ਦੀ ਤੁਲਨਾ ਨਵੇਂ ਨੈੱਟਵਰਕ ਦੁਆਰਾ ਮੰਗੇ pool ਨਾਲ ਕਰੋ, ਅਤੇ ਯਾਦ ਰੱਖੋ ਕਿ Compose ਹਰ ਪ੍ਰੋਜੈਕਟ ਲਈ ਆਪਣਾ ਡਿਫਾਲਟ ਨੈੱਟਵਰਕ ਬਣਾਉਂਦਾ ਹੈ। ਭੁੱਲੇ ਹੋਏ ਪ੍ਰੋਜੈਕਟ ਨਾਲ ਟਕਰਾਅ ਡੈਮਨ ਨਾਲ ਟਕਰਾਅ ਵਾਂਗ ਹੀ ਦਿਸਦਾ ਹੈ।
ਸੇਵਾ ਉੱਤੇ ਸਥਿਰ ipv4_address ਇੱਕ ਕੰਟੇਨਰ ਦਾ ਪਤਾ ਹੈ, pool ਦੀ ਪਰਿਭਾਸ਼ਾ ਨਹੀਂ। ਇਸਨੂੰ ਬਦਲਣ ਨਾਲ ਓਵਰਲੈਪ ਨਹੀਂ ਜਾਂਦਾ, ਕਿਉਂਕਿ ਓਵਰਲੈਪ ਨੈੱਟਵਰਕ ਸਬਨੈੱਟਾਂ ਵਿਚਕਾਰ ਹੁੰਦਾ ਹੈ, ਕੰਟੇਨਰਾਂ ਵਿਚਕਾਰ ਨਹੀਂ। Docker ਦਾ network-create ਹਵਾਲਾ ਆਮ ਬ੍ਰਿਜ ਅਲਾਟਮੈਂਟ ਲਈ ਗੈਰ-ਓਵਰਲੈਪਿੰਗ ਸਬਨੈੱਟ ਮੰਗਦਾ ਹੈ ਅਤੇ ਇੱਕ ਨੂੰ ਸਪਸ਼ਟ ਰੂਪ ਵਿੱਚ ਕਿਵੇਂ ਚੁਣਨਾ ਹੈ ਦਾ ਦਸਤਾਵੇਜ਼ੀਕਰਨ ਕਰਦਾ ਹੈ।
VPN ਤੋਂ ਬਚਣ ਵਾਲਾ ਪ੍ਰੀਫਿਕਸ ਚੁਣੋ
ਤੁਰੰਤ ਟਕਰਾਅ ਅਤੇ ਭਵਿੱਖ ਦਾ ਰੂਟ ਇੱਕੋ ਚੋਣ ਨਾਲ ਤੈਅ ਹੁੰਦੇ ਹਨ, ਇਸ ਲਈ ਇਹ ਇੱਕ ਵਾਰ ਕਰੋ। ਉਮੀਦਵਾਰ ਰੇਂਜ ਦੀ ਤੁਲਨਾ LAN, ਹੋਸਟ ਦੇ ਪਹੁੰਚ ਸਕਣ ਵਾਲੇ ਹਰ VPN ਟਿਕਾਣੇ, ਅਤੇ ਵਰਤੋਂ ਵਿੱਚ ਕਿਸੇ ਹੋਰ overlay ਨਾਲ ਕਰੋ।
Docker ਨੂੰ ਸੰਤੁਸ਼ਟ ਕਰਨ ਵਾਲਾ ਪਰ ਦੂਰ ਦੇ ਨੈੱਟਵਰਕ ਨਾਲ ਟਕਰਾਉਣ ਵਾਲਾ ਪ੍ਰੀਫਿਕਸ ਤੁਹਾਨੂੰ ਅਜਿਹਾ ਕੰਟੇਨਰ ਦਿੰਦਾ ਹੈ ਜੋ ਸਾਫ਼ ਸ਼ੁਰੂ ਹੁੰਦਾ ਹੈ ਅਤੇ ਟਨਲ ਚੜ੍ਹਦੇ ਹੀ ਪਹੁੰਚ ਤੋਂ ਬਾਹਰ ਹੋ ਜਾਂਦਾ ਹੈ। ਇਹ ਇਸ ਲੇਖ ਦੀ ਦੂਜੀ ਗਲਤੀ ਹੈ, ਅਤੇ ਹੁਣ ਬਚਣ ਨਾਲੋਂ ਬਾਅਦ ਵਿੱਚ ਇਸਦਾ ਨਿਦਾਨ ਕਰਨਾ ਬਹੁਤ ਔਖਾ ਹੈ।
ਚੁਣੀਆਂ ਰੇਂਜਾਂ ਨੂੰ ਅਜਿਹੀ ਥਾਂ ਲਿਖੋ ਜਿੱਥੋਂ ਅਗਲਾ ਪ੍ਰੋਜੈਕਟ ਉਹਨਾਂ ਨੂੰ ਪੜ੍ਹ ਸਕੇ। ਅਲਾਟ ਕੀਤੇ ਪ੍ਰੀਫਿਕਸਾਂ ਦਾ ਇੱਕ-ਲਾਈਨ ਰਜਿਸਟਰ ਬਿਨਾਂ ਵਿਆਖਿਆ ਵਾਲੇ ਇੱਕ ਹਫ਼ਤੇ ਦੇ ਟਾਈਮਆਊਟ ਨਾਲੋਂ ਸਸਤਾ ਹੈ।
ਨੈੱਟਵਰਕ ਨੂੰ ਜਾਣਬੁੱਝ ਕੇ ਹਟਾਓ ਜਾਂ ਬਦਲੋ
ਨਵੇਂ Compose ਨੈੱਟਵਰਕ ਲਈ, ਨੈੱਟਵਰਕ ਦੀ IPAM ਸੰਰਚਨਾ ਵਿੱਚ ਵਰਤਿਆ ਨਾ ਗਿਆ ਪ੍ਰੀਫਿਕਸ ਸੈੱਟ ਕਰੋ। ਮੌਜੂਦਾ ਪ੍ਰੋਜੈਕਟ ਲਈ, ਮੁੜ-ਨੰਬਰਿੰਗ ਦੀ ਯੋਜਨਾ ਬਣਾਓ: ਸਥਿਰ ਪਤੇ, ਨਿਰਭਰ ਸੇਵਾਵਾਂ ਅਤੇ ਨੈੱਟਵਰਕ ਮੁੜ ਬਣਾਉਣ ਦਾ ਕਦਮ—ਸਭ ਨੂੰ ਧਿਆਨ ਵਿੱਚ ਰੱਖਣਾ ਪਵੇਗਾ, ਕਿਉਂਕਿ YAML ਸੋਧਣ ਨਾਲ ਚੱਲ ਰਿਹਾ ਨੈੱਟਵਰਕ ਮੁੜ-ਨੰਬਰ ਨਹੀਂ ਹੁੰਦਾ।
ਜੇਕਰ ਕੋਈ ਪੁਰਾਣਾ ਨੈੱਟਵਰਕ ਟਕਰਾਉਂਦੀ ਅਲਾਟਮੈਂਟ ਦਾ ਮਾਲਕ ਹੈ, ਤਾਂ ਇਸਨੂੰ ਹਟਾਉਣ ਤੋਂ ਪਹਿਲਾਂ ਜਾਂਚੋ ਕਿ ਕੌਣ ਜੁੜਿਆ ਹੈ। docker network rm ਸਰਗਰਮ endpoint ਹੋਣ ਤੱਕ ਇਨਕਾਰ ਕਰਦਾ ਹੈ, ਅਤੇ docker stop ਨੈੱਟਵਰਕ ਨਾਮ ਦੀ ਬਜਾਏ ਕੰਟੇਨਰ ਨਾਮ ਜਾਂ ID ਲੈਂਦਾ ਹੈ। ਕੰਟੇਨਰ ਰੋਕਣ ਨਾਲ pool ਰੱਖਣ ਵਾਲੀ ਨੈੱਟਵਰਕ ਪਰਿਭਾਸ਼ਾ ਵੀ ਨਹੀਂ ਹਟਦੀ।
ਵਿਆਪਕ prune ਨਿਦਾਨ ਦਾ ਸਾਧਨ ਨਹੀਂ ਹੈ। ਇਹ ਅਸੰਬੰਧਿਤ ਪ੍ਰੋਜੈਕਟਾਂ ਤੱਕ ਪਹੁੰਚਦਾ ਹੈ ਅਤੇ ਉਹ ਸਬੂਤ ਨਸ਼ਟ ਕਰਦਾ ਹੈ ਜੋ ਤੁਸੀਂ ਇਕੱਠੇ ਕਰਨ ਵਾਲੇ ਸੀ।
ਡਿਫਾਲਟ pool ਸਿਰਫ਼ ਅਗਲੀ ਅਲਾਟਮੈਂਟ ਵਿੱਚ ਮਦਦ ਕਰਦੇ ਹਨ
ਡੈਮਨ ਦੀ ਡਿਫਾਲਟ ਪਤਾ pool ਸੈਟਿੰਗ ਭਵਿੱਖ ਦੀਆਂ ਸਵੈਚਾਲਿਤ ਅਲਾਟਮੈਂਟਾਂ ਨੂੰ ਤੁਹਾਡੇ ਰਾਖਵੇਂ ਰੇਂਜਾਂ ਤੋਂ ਬਾਹਰ ਰੱਖ ਕੇ ਸੁਧਾਰਦੀ ਹੈ। ਇਹ ਪਹਿਲਾਂ ਹੀ ਮੌਜੂਦ ਨੈੱਟਵਰਕਾਂ ਨੂੰ ਪਿੱਛੇ ਜਾ ਕੇ ਨਵੇਂ ਪਤੇ ਨਹੀਂ ਦਿੰਦੀ, ਅਤੇ ਕਿਸੇ ਹੋਰ ਸਪਸ਼ਟ ਸਬਨੈੱਟ ਨਾਲ ਓਵਰਲੈਪ ਹੁੰਦੇ ਸਪਸ਼ਟ ਸਬਨੈੱਟ ਦਾ ਹੱਲ ਨਹੀਂ ਕਰਦੀ।
ਉਸ ਸੈਟਿੰਗ ਨੂੰ ਆਪਣੇ ਵੱਖਰੇ ਰੀਸਟਾਰਟ ਵਾਲਾ ਵੱਖਰਾ, ਯੋਜਨਾਬੱਧ ਬਦਲਾਅ ਮੰਨੋ, ਇੱਕ ਪ੍ਰੋਜੈਕਟ ਦੀ ਮੁਰੰਮਤ ਦਾ ਹਿੱਸਾ ਨਹੀਂ। ਦੋਵਾਂ ਨੂੰ ਮਿਲਾਉਣ ਦਾ ਅਰਥ ਹੈ ਡੈਮਨ ਰੀਸਟਾਰਟ ਕਿਸੇ ਅਸੰਬੰਧਿਤ ਜਾਂਚ ਦੇ ਵਿਚਕਾਰ ਪੈਂਦਾ ਹੈ। ਇਸਨੂੰ ਆਪਣੀ ਵਿੰਡੋ ਵਿੱਚ ਤਹਿ ਕਰੋ। ਫਿਰ ਪੁਸ਼ਟੀ ਕਰੋ ਕਿ ਇੱਕ ਨਵੀਂ ਸਵੈਚਾਲਿਤ ਅਲਾਟਮੈਂਟ ਸੱਚਮੁੱਚ ਤੁਹਾਡੇ ਰਾਖਵੇਂ ਰੇਂਜਾਂ ਤੋਂ ਬਾਹਰ ਪੈਂਦੀ ਹੈ।
ਬਣਾਉਣਾ ਸਫਲ ਹੋਣ ਤੋਂ ਬਾਅਦ, ਅਸਲ ਵਿੱਚ ਚੱਲ ਰਿਹਾ ਸਬਨੈੱਟ ਪ੍ਰਮਾਣਿਤ ਕਰੋ ਅਤੇ ਫਿਰ VPN ਨੂੰ ਇਸਦੀ ਇੱਛਤ ਸਥਿਤੀ ਵਿੱਚ ਰੱਖ ਕੇ ਇੱਕ ਅਸਲ ਐਪਲੀਕੇਸ਼ਨ ਬੇਨਤੀ ਕਰੋ। ਜੇ pool ਵੈਧ ਹੈ ਅਤੇ ਪਹੁੰਚ ਅਜੇ ਵੀ ਅਸਫਲ ਹੁੰਦੀ ਹੈ, ਤਾਂ ਬਾਕੀ ਕੰਮ ਰੂਟ ਚੋਣ, ਫਿਲਟਰਿੰਗ ਅਤੇ ਵਾਪਸੀ ਮਾਰਗ ਹੈ। ਉਹ ਰਨਟਾਈਮ ਜਾਂਚ ਹੈ, ਅਤੇ ਇਹ ਅਲਾਟਮੈਂਟ ਗਲਤੀ ਨੂੰ ਪਿੱਛੇ ਜਾ ਕੇ ਅਰਥਹੀਣ ਨਹੀਂ ਬਣਾਉਂਦੀ।
ਕੰਮ ਦਾ ਕ੍ਰਮ: ਅਲਾਟ ਕੀਤੇ pool ਪੜ੍ਹੋ, ਅਜਿਹਾ ਪ੍ਰੀਫਿਕਸ ਚੁਣੋ ਜੋ Docker ਅਤੇ VPN ਟਿਕਾਣਿਆਂ ਦੋਵਾਂ ਨੂੰ ਟਾਲੇ, ਨੈੱਟਵਰਕ ਨੂੰ ਜਾਣਬੁੱਝ ਕੇ ਮੁੜ ਬਣਾਓ, ਫਿਰ ਟਨਲ ਚੜ੍ਹੇ ਹੋਣ 'ਤੇ ਇੱਕ ਬੇਨਤੀ ਦੀ ਜਾਂਚ ਕਰੋ।