ਮਲਟੀ-ਰਾਊਟਰ Pi VPN: ਹਰ ਰੂਟ ਉਸ ਡਿਵਾਈਸ 'ਤੇ ਰੱਖੋ ਜੋ ਫੈਸਲਾ ਲੈਂਦੀ ਹੈ
ਹੇਠਲਾ ਰਾਊਟਰ ਦੂਜਾ ਕਲਾਇੰਟ ਸਬਨੈੱਟ ਜੋੜਦਾ ਹੈ, ਅਤੇ ਚਾਰ ਡਿਵਾਈਸਾਂ ਵਿੱਚੋਂ ਹਰ ਇੱਕ ਕੋਲ ਇੱਕ ਫੈਸਲਾ ਹੈ। ਰੂਟ ਰੱਖੋ, ਸਰੋਤ ਜਾਂਚੋ, ਫਿਰ ਅਸਲੀ ਕਲਾਇੰਟ ਤੋਂ ਪਰਖੋ।
Pi ਦੇ ਪਿੱਛੇ Wi-Fi ਬਾਕਸ ਲਗਾਉਣ ਨਾਲ ਇੱਕ ਰਾਊਟਿੰਗ ਫੈਸਲਾ ਚਾਰ ਹੋ ਜਾਂਦਾ ਹੈ, ਅਤੇ ਜਦੋਂ ਚਾਰੇ ਇੱਕੋ ਡਿਵਾਈਸ 'ਤੇ ਲਏ ਜਾਂਦੇ ਹਨ ਤਾਂ ਯੋਜਨਾ ਟੁੱਟ ਜਾਂਦੀ ਹੈ। ਪਹਿਲਾ ਸਵਾਲ ਇਹ ਨਹੀਂ ਕਿ ਕਿਹੜਾ ਰੂਟ ਜੋੜਨਾ ਹੈ। ਇਹ ਹੈ ਕਿ ਨਵਾਂ ਬਾਕਸ ਬ੍ਰਿਜ ਕਰਦਾ ਹੈ ਜਾਂ ਰਾਊਟ, ਕਿਉਂਕਿ ਉਹ ਜਵਾਬ ਤੈਅ ਕਰਦਾ ਹੈ ਕਿ ਕਿੰਨੇ ਸਬਨੈੱਟ ਹਨ ਅਤੇ ਕਿਹੜੀਆਂ ਡਿਵਾਈਸਾਂ ਨੂੰ ਉਨ੍ਹਾਂ ਬਾਰੇ ਸਿੱਖਣਾ ਹੈ। ਪਹਿਲਾਂ ਜੋੜ ਦਾ ਮਾਡਲ ਚੁਣੋ; ਹਰ ਰੂਟ ਉਸੇ ਤੋਂ ਆਉਂਦਾ ਹੈ।
ਬ੍ਰਿਜ ਜਾਂ ਰਾਊਟ: ਉਹ ਚੋਣ ਜੋ ਗਿਣਤੀ ਤੈਅ ਕਰਦੀ ਹੈ
ਬ੍ਰਿਜ ਨਵੇਂ ਕਲਾਇੰਟਾਂ ਨੂੰ ਉਸੇ ਸਬਨੈੱਟ 'ਤੇ ਰੱਖਦਾ ਹੈ ਜਿਸ 'ਤੇ Pi ਪਹਿਲਾਂ ਹੀ ਸੇਵਾ ਦਿੰਦਾ ਹੈ। ਇੱਕ ਸਬਨੈੱਟ, ਇੱਕ DHCP ਅਧਿਕਾਰ, ਅਤੇ ਰਾਊਟ ਕਰਨ ਲਈ ਕੋਈ ਹੈਂਡਓਫ ਨਹੀਂ। ਇਹ ਸਰਲ ਵਿਵਸਥਾ ਹੈ ਅਤੇ ਜਦੋਂ ਵੱਖਰਾ ਕਲਾਇੰਟ ਨੈੱਟਵਰਕ ਕਦੇ ਲੋੜ ਨਹੀਂ ਸੀ ਤਾਂ ਸਹੀ ਹੈ। ਰਾਊਟਡ ਲਿੰਕ ਵੱਖਰਾ ਡਿਜ਼ਾਈਨ ਹੈ: ਬਾਕਸ ਆਪਣਾ ਸਬਨੈੱਟ ਰੱਖਦਾ ਹੈ, ਅਤੇ ਉਹ ਪ੍ਰੀਫਿਕਸ ਟ੍ਰੈਫਿਕ ਜਿੱਥੇ ਵੀ ਜਾਂਦਾ ਹੈ ਉੱਥੇ ਲਿਜਾਣਾ ਪੈਂਦਾ ਹੈ।
ਇਸ ਯੋਜਨਾ ਦਾ ਬਾਕੀ ਹਿੱਸਾ ਹੇਠਲਾ ਰਾਊਟਰ ਰੱਖਦਾ ਹੈ ਅਤੇ ਕਲਾਇੰਟ ਸਰੋਤ ਪਤੇ ਸੰਭਾਲਦਾ ਹੈ। ਟੀਚਾ ਇੱਕ ਨਿੱਜੀ VPN ਨੈੱਟਵਰਕ ਹੈ, ਪੂਰਾ ਇੰਟਰਨੈੱਟ ਐਗਜ਼ਿਟ ਨਹੀਂ। ਪਤਿਆਂ ਤੋਂ ਪਹਿਲਾਂ ਮਾਡਲ ਲਿਖੋ, ਕਿਉਂਕਿ ਹੇਠਾਂ ਦਿੱਤੀ ਸੂਚੀ ਸਿਰਫ਼ ਰਾਊਟਡ ਜੋੜ ਦੀ ਇੱਕ ਉਦਾਹਰਨ ਹੈ।
client subnet 10.41.0.0/24
client gateway 10.41.0.1
router-to-Pi link 192.168.71.2
Pi on that link 192.168.71.1
private target 10.72.9.0/24
ਕੌਣ ਕੀ ਫੈਸਲਾ ਕਰਦਾ ਹੈ
| Decision owner | Entry that encodes the decision | Failure when the entry is missing |
|---|---|---|
| Pi VPN host | Return route for 10.41.0.0/24 via 192.168.71.2, and a tunnel route for 10.72.9.0/24 | Replies to downstream clients die at the Pi |
| Owner of the remote network | A path for 10.41.0.0/24 over the permitted tunnel | Replies stop at the first unaware hop |
| LAN router behind the Pi | Specific route for 10.72.9.0/24 via 192.168.71.1, or a suitable default | Clients never send private traffic to the Pi |
| Client machine | Default via 10.41.0.1, or a specific entry for 10.72.9.0/24 | The private network is unreachable from the client |
ਹਰ ਡਿਵਾਈਸ ਇੱਕ ਫੈਸਲਾ ਲੈਂਦੀ ਹੈ, ਅਤੇ ਕੋਈ ਵੀ ਦੂਜੇ ਦਾ ਫੈਸਲਾ ਉਸ ਦੀ ਥਾਂ ਨਹੀਂ ਲੈ ਸਕਦੀ। Pi ਨੂੰ ਇੱਕ ਨਹੀਂ, ਦੋ ਐਂਟਰੀਆਂ ਚਾਹੀਦੀਆਂ ਹਨ, ਅਤੇ ਵਾਪਸੀ ਦਾ ਰਾਹ ਹੀ ਉਹ ਹੈ ਜੋ ਲੋਕ ਭੁੱਲ ਜਾਂਦੇ ਹਨ। ਅੱਗੇ ਭੇਜਿਆ ਟ੍ਰੈਫਿਕ ਨਿੱਜੀ ਨੈੱਟਵਰਕ ਤੱਕ ਸਹੀ ਪਹੁੰਚਦਾ ਹੈ ਅਤੇ ਫਿਰ ਵਾਪਸੀ ਦੇ ਰਾਹ 'ਤੇ ਮਰ ਜਾਂਦਾ ਹੈ, ਕਿਉਂਕਿ 10.41.0.0/24 ਕਿੱਥੇ ਰਹਿੰਦਾ ਹੈ Pi ਨੂੰ ਪਤਾ ਨਹੀਂ। ਇਹ ਫਾਇਰਵਾਲ ਸਮੱਸਿਆ ਵਰਗਾ ਲੱਗਦਾ ਹੈ ਅਤੇ ਅਸਲ ਵਿੱਚ ਇੱਕ ਗੁੰਮ ਰੂਟ ਹੈ।
ਦੂਰ ਵਾਲੇ ਪਾਸੇ ਨੂੰ ਵੀ ਆਪਣਾ ਰੂਟ ਚਾਹੀਦਾ ਹੈ। ਜੇ ਦੂਰ ਦੇ ਸਿਰੇ ਦੀ ਸੇਵਾ ਨੂੰ ਨਹੀਂ ਪਤਾ ਕਿ 10.41.0.0/24 ਤੁਹਾਡੇ ਟਨਲ ਰਾਹੀਂ ਪਹੁੰਚਯੋਗ ਹੈ, ਤਾਂ ਜਵਾਬ ਪਹਿਲੇ ਹੌਪ 'ਤੇ ਰੁਕ ਜਾਂਦੇ ਹਨ ਜਿਸ ਕੋਲ ਜਵਾਬ ਨਹੀਂ। ਪੈਕਟ ਫਿਲਟਰ ਪੜ੍ਹਨ ਤੋਂ ਪਹਿਲਾਂ ਦੋਵੇਂ ਦਿਸ਼ਾਵਾਂ ਜੋੜੋ।
ਅਗਲੇ ਹੌਪ ਜੋੜ ਤੋਂ ਆਉਂਦੇ ਹਨ
ਅਗਲਾ ਹੌਪ ਉਸ ਨੈੱਟਵਰਕ 'ਤੇ ਇੱਕ ਪਤਾ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ ਜਿੱਥੇ ਡਿਵਾਈਸ ਅਸਲ ਵਿੱਚ ਪਹੁੰਚ ਸਕੇ। VPN ਪੀਅਰ ਦਾ ਜਨਤਕ ਪਤਾ ਨਿੱਜੀ ਸਬਨੈੱਟ ਲਈ ਅਗਲਾ ਹੌਪ ਨਹੀਂ ਹੈ, ਅਤੇ ਦੂਰ ਦਾ ਸੇਵਾ ਨੈੱਟਵਰਕ ਕਿਸੇ ਵੀ ਤਰ੍ਹਾਂ ਅਗਲਾ ਹੌਪ ਨਹੀਂ ਹੈ। ਪਹੁੰਚ ਤੋਂ ਬਾਹਰਲੇ ਗੇਟਵੇ ਵੱਲ ਰੂਟ ਸੂਚੀ ਵਿੱਚ ਸਹੀ ਦਿਸਦਾ ਹੈ ਅਤੇ ਹਰ ਪੈਕਟ ਡੇਗ ਦਿੰਦਾ ਹੈ। ਮੰਜ਼ਿਲ ਨੂੰ ਦੋਸ਼ ਦੇਣ ਤੋਂ ਪਹਿਲਾਂ ਜਾਂਚੋ ਕਿ ਗੇਟਵੇ ਜਵਾਬ ਦਿੰਦਾ ਹੈ।
Pi ਦੇ ਬਾਹਰੀ VPN ਪੀਅਰ ਨੂੰ ਉਸ ਦੇ ਆਪਣੇ ਅੰਡਰਲੇ ਰੂਟ ਰਾਹੀਂ ਪਹੁੰਚਯੋਗ ਰੱਖੋ। ਉਹ ਐਂਟਰੀ ਪੇਲੋਡ ਰੂਟਾਂ ਤੋਂ ਵੱਖਰੀ ਹੈ, ਅਤੇ ਉਨ੍ਹਾਂ ਨੂੰ ਮਿਲਾਉਣ ਨਾਲ ਅਜਿਹਾ ਟਨਲ ਮਿਲਦਾ ਹੈ ਜੋ ਪਾਥ ਬਦਲਣ ਤੋਂ ਬਾਅਦ ਦੁਬਾਰਾ ਸਥਾਪਤ ਨਹੀਂ ਹੋ ਸਕਦਾ।
ਸਟੈਟਿਕ ਰੂਟਾਂ ਦੀ ਦਸਤਾਵੇਜ਼ ਮੰਜ਼ਿਲ ਅਤੇ ਗੇਟਵੇ ਵਿਚਕਾਰਲਾ ਫ਼ਰਕ ਸਪੱਸ਼ਟ ਕਰਦੀ ਹੈ, ਭਾਵੇਂ ਹਰ ਪਲੇਟਫਾਰਮ ਆਪਣੇ ਮੀਨੂ ਨੂੰ ਵੱਖਰੇ ਨਾਮ ਦਿੰਦਾ ਹੈ। ਦੂਜੇ ਵਿਕਰੇਤਾ ਦੀ ਸਕਰੀਨ ਕਾਪੀ ਕਰਨ ਦੀ ਥਾਂ ਆਪਣੇ ਸਾਹਮਣੇ ਵਾਲੀ ਡਿਵਾਈਸ ਦੀ ਦਸਤਾਵੇਜ਼ ਪੜ੍ਹੋ। ਹੇਠਾਂ ਦਿੱਤੇ ਕਮਾਂਡ Linux 'ਤੇ ਐਂਟਰੀਆਂ ਦਾ ਆਕਾਰ ਦਿਖਾਉਂਦੇ ਹਨ।
# on the Pi
ip route add 10.41.0.0/24 via 192.168.71.2
ip route add 10.72.9.0/24 dev tun0
# on the downstream router
ip route add 10.72.9.0/24 via 192.168.71.1
ਅਨੁਵਾਦ ਸਰੋਤ ਨਾਲ ਕੀ ਕਰਦਾ ਹੈ
ਜੇ ਹੇਠਲਾ ਰਾਊਟਰ ਪਹਿਲਾਂ ਹੀ ਆਪਣੇ ਕਲਾਇੰਟਾਂ ਦਾ ਟ੍ਰਾਂਜ਼ਿਟ ਪਤੇ ਵਿੱਚ ਅਨੁਵਾਦ ਕਰਦਾ ਹੈ, ਤਾਂ Pi ਹਰ ਕਲਾਇੰਟ ਦੇ ਆਪਣੇ ਪਤੇ ਦੀ ਥਾਂ ਇੱਕ ਅਨੁਵਾਦਿਤ ਸਰੋਤ ਦੇਖਦਾ ਹੈ। ਇਹ ਉੱਪਰ ਵਾਲੇ ਸਰੋਤ-ਸੰਭਾਲਣ ਵਾਲੇ ਡਿਜ਼ਾਈਨ ਤੋਂ ਵੱਖਰਾ ਹੈ। ਇਹ ਸਰੋਤ-ਆਧਾਰਿਤ ਨੀਤੀ, ਲੌਗਿੰਗ ਅਤੇ ਇਹ ਬਦਲਦਾ ਹੈ ਕਿ ਕਿਹੜਾ ਪਾਸਾ ਕਨੈਕਸ਼ਨ ਸ਼ੁਰੂ ਕਰ ਸਕਦਾ ਹੈ। ਦੋਵੇਂ ਡਿਜ਼ਾਈਨ ਕੰਮ ਕਰਦੇ ਹਨ; ਉਹ ਵੱਖਰੇ ਸਵਾਲਾਂ ਦੇ ਜਵਾਬ ਦਿੰਦੇ ਹਨ।
ਜਦੋਂ ਉੱਪਰਲੀ VPN ਸੇਵਾ ਕਲਾਇੰਟ ਪ੍ਰੀਫਿਕਸ ਨੂੰ ਵਾਪਸ ਰਾਊਟ ਕਰਨ ਤੋਂ ਇਨਕਾਰ ਕਰਦੀ ਹੈ, ਤਾਂ Pi ਦੇ ਟਨਲ ਐਗਰੈੱਸ 'ਤੇ ਸੰਕਰਾ ਅਨੁਵਾਦ ਇੱਕ ਜਾਇਜ਼ ਆਰਜ਼ੀ ਹੱਲ ਹੋ ਸਕਦਾ ਹੈ। ਇਹ ਸਬੂਤ ਨਹੀਂ ਕਿ ਗੁੰਮ ਰੂਟ ਬੇਲੋੜਾ ਸੀ। ਦਰਜ ਕਰੋ ਕਿ ਦੂਰ ਦਾ ਨੈੱਟਵਰਕ ਅਸਲ ਵਿੱਚ ਕਿਹੜਾ ਪਤਾ ਦੇਖਦਾ ਹੈ ਅਤੇ ਕਿਹੜਾ ਵਾਪਸੀ ਰਾਹ ਬਣਦਾ ਹੈ।
ਰੂਟ ਚੋਣ, ਫਾਰਵਰਡਿੰਗ ਇਜਾਜ਼ਤ ਅਤੇ ਸਰੋਤ ਅਨੁਵਾਦ ਤਿੰਨ ਵੱਖਰੇ ਕੰਮ ਰਹਿੰਦੇ ਹਨ। ਇੱਕ ਵਾਇਰਡ ਕਲਾਇੰਟ ਕੰਮ ਕਰਦਾ ਹੈ ਇਸ ਲਈ ਸਾਂਝੀ NAT ਚੇਨ ਫਲਸ਼ ਕਰਨਾ ਜਾਂ ਹਰ ਇੰਟਰਫੇਸ ਨੂੰ ਇਜਾਜ਼ਤ ਦੇਣਾ ਹੀ ਉਹ ਤਰੀਕਾ ਹੈ ਜਿਸ ਨਾਲ ਕੰਮ ਕਰਦੀ ਪਰਖ ਖੁੱਲ੍ਹਾ ਫਾਰਵਰਡਰ ਬਣ ਜਾਂਦੀ ਹੈ।
ਕਲਾਇੰਟ ਮਸ਼ੀਨ ਤੋਂ ਇਹ ਸਾਬਤ ਕਰੋ
ਹੇਠਲੇ LAN ਦੀ ਮਸ਼ੀਨ ਤੋਂ ਬੇਨਤੀ ਭੇਜੋ, ਫਿਰ ਉਸ ਦੇ ਸਰੋਤ ਨੂੰ ਬਾਹਰ ਅਤੇ ਵਾਪਸ ਟਰੈਕ ਕਰੋ। Pi ਵੱਲੋਂ ਭੇਜਿਆ ping ਕਦੇ ਵੀ ਹੇਠਲੇ ਵਾਪਸੀ ਰੂਟ ਦੀ ਵਰਤੋਂ ਨਹੀਂ ਕਰਦਾ, ਇਸ ਲਈ ਸਫਲ ping ਦਿਸਣ ਨਾਲੋਂ ਘੱਟ ਸਾਬਤ ਕਰਦਾ ਹੈ। Pi ਦੇ ਆਪਣੇ LAN 'ਤੇ ਵਾਇਰਡ ਕਲਾਇੰਟ ਤੋਂ ਦੂਜੀ ਪਰਖ ਜੋੜੋ ਤਾਂ ਜੋ ਦੋਵੇਂ ਰਾਹ ਤੁਲਨਾ ਕੀਤੇ ਜਾ ਸਕਣ। ਕੋਈ ਵੀ ਡਿਵਾਈਸ ਰੀਬੂਟ ਕਰਨ ਤੋਂ ਬਾਅਦ ਦੋਵੇਂ ਦੁਹਰਾਓ।
ਹੱਥ ਨਾਲ ਜੋੜੇ ਰੂਟ ਅਤੇ ਕਦੇ ਸੰਭਾਲੇ ਨਾ ਗਏ ਅਨੁਵਾਦ ਇਕੱਠੇ ਗਾਇਬ ਹੋ ਜਾਂਦੇ ਹਨ। ਫਿਰ ਜੋੜੀ ਅਧੂਰੇ ਕੰਮ ਦੀ ਥਾਂ ਨਵੀਂ ਖਰਾਬੀ ਵਰਗੀ ਦਿਸਦੀ ਹੈ।
ਜੋੜ ਦਾ ਮਾਡਲ ਰੂਟਾਂ, ਮਨਜ਼ੂਰ ਨਿੱਜੀ ਸੇਵਾ ਅਤੇ ਕਿਸੇ ਵੀ ਅਨੁਵਾਦ ਨਾਲ ਇੱਕ ਨੋਟ ਵਿੱਚ ਸੰਭਾਲੋ। ਉਹ ਨੋਟ ਹੀ ਅਗਲੇ ਵਿਅਕਤੀ ਨੂੰ ਵਾਇਰਲੈੱਸ ਥਾਂ ਨੂੰ ਰਾਊਟਿੰਗ ਨੀਤੀ ਦਾ ਸਵਾਲ ਸਮਝਣ ਤੋਂ ਰੋਕਦਾ ਹੈ।