OpenVPN ಸರ್ವರ್ nopool ನೊಂದಿಗೆ: ಸ್ಪಷ್ಟ ಪೂಲ್ ಶ್ರೇಣಿಯನ್ನು ಘೋಷಿಸಿ
ಸಬ್ನೆಟ್ ಉಳಿಸಿಕೊಳ್ಳಿ ಮತ್ತು ಹಂಚಿಕೆಯನ್ನು ನಿಮ್ಮ ಹೊಣೆಗೆ ತೆಗೆದುಕೊಳ್ಳಿ. ಸ್ವಯಂಚಾಲಿತ ಪೂಲ್ ಅನ್ನು ನಿಗ್ರಹಿಸಿ, ಒಳಗೊಳ್ಳುವ ಮಿತಿಗಳನ್ನು ಘೋಷಿಸಿ ಮತ್ತು ಹೊಸ ಕ್ಲೈಂಟ್ ನಿಜವಾಗಿ ಏನನ್ನು ಪಡೆಯುತ್ತದೆ ಎಂದು ಪರಿಶೀಲಿಸಿ.
ಸರ್ವರ್ ಸಹಾಯಕರು ಸಬ್ನೆಟ್ ಅನ್ನು ಸಂರಚಿಸಿ ನಂತರ ತಮ್ಮ ಆಯ್ಕೆಯ ಚಲನಶೀಲ ಪೂಲ್ನಿಂದ ಅದನ್ನು ತುಂಬುತ್ತಾರೆ. ಆ ಡೀಫಾಲ್ಟ್ ಕೆಲವು ವಿಳಾಸಗಳನ್ನು ಹಂಚಿಕೆಯಿಂದ ಹೊರಗಿಡಬೇಕಾದವರೆಗೆ ಅನುಕೂಲಕರವಾಗಿರುತ್ತದೆ — ಅವು ಸ್ಥಿರ ನಿಯೋಜನೆಗಳಿಗೆ ಕಾಯ್ದಿರಿಸಲ್ಪಟ್ಟಿರಲಿ ಅಥವಾ ಭವಿಷ್ಯದ ವಿಭಾಗಕ್ಕಾಗಿ ಇಟ್ಟುಕೊಳ್ಳಲ್ಪಟ್ಟಿರಲಿ. ಸ್ವಯಂಚಾಲಿತ ಪೂಲ್ ಅನ್ನು ನಿಗ್ರಹಿಸಿ ಶ್ರೇಣಿಯನ್ನು ನೀವೇ ಘೋಷಿಸಲು ಎರಡು ಸಾಲುಗಳು ಮತ್ತು ಯಾವ ವಿಳಾಸಗಳು ಹಂಚಿಕೆಗೆ ಅಲ್ಲ ಎಂಬ ಒಂದು ಉದ್ದೇಶಪೂರ್ವಕ ನಿರ್ಧಾರ ಬೇಕು. ಉಳಿದದ್ದು ಕಾರ್ಯಾಚರಣೆಯ ಶಿಸ್ತು: ಪಟ್ಟಿ, ಅನ್ವಯ, ಪರಿಶೀಲನೆ, ಹಿಂಪಡೆಯುವಿಕೆ.
ಇದು ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತಿರುವ ಸೇವೆಗೆ ಬದಲಾವಣೆ, ಆದ್ದರಿಂದ ಇದನ್ನು ಕಾರ್ಯಾಚರಣೆಯ ಕೆಲಸವೆಂದು ಪರಿಗಣಿಸಿ: ಮೊದಲು ಪಟ್ಟಿ, ಸಾಮಾನ್ಯ ಜೀವನಚಕ್ರದ ಮೂಲಕ ಅನ್ವಯ, ಹೊಸ ಕ್ಲೈಂಟ್ನೊಂದಿಗೆ ಪರಿಶೀಲನೆ ಮತ್ತು ಸಿದ್ಧವಾದ ಹಿಂಪಡೆಯುವಿಕೆ.
ನಿಮ್ಮ ಬಳಿ ಈಗಾಗಲೇ ಇರುವ ಸಬ್ನೆಟ್ನಿಂದ ಪ್ರಾರಂಭಿಸಿ
ಪ್ರಸ್ತುತ ಸರ್ವರ್ ಸಂರಚನೆ ಮತ್ತು ಕ್ಲೈಂಟ್ಗಳು ನಿಜವಾಗಿ ಹೊಂದಿರುವ ವಿಳಾಸಗಳನ್ನು ಓದಿ. ಆ ಮೂಲರೇಖೆಗೆ ಹೋಲಿಸಿದರೆ ಮಾತ್ರ ಪೂಲ್ ಬದಲಾವಣೆ ಅರ್ಥಪೂರ್ಣ, ಮತ್ತು ಮೂಲರೇಖೆ ಯಾವಾಗಲೂ ಫೈಲ್ ಸೂಚಿಸುವಂತಿರುವುದಿಲ್ಲ, ಏಕೆಂದರೆ ನಿರ್ವಹಿತ ಉತ್ಪನ್ನ ಅಥವಾ ಸಂರಚನಾ ಜನರೇಟರ್ ನೀವು ಓದುತ್ತಿರುವ ಫೈಲ್ನ ಮಾಲೀಕರಾಗಿರಬಹುದು.
grep -nE '^(topology|server|ifconfig-pool|max-clients|client-config-dir)' /etc/openvpn/server/lab.conf
ip -4 addr show tun0ಜಾರಿಯಲ್ಲಿರುವ ಟೋಪೊಲಜಿಯನ್ನು ದೃಢೀಕರಿಸಿ. ಸಬ್ನೆಟ್ ಟೋಪೊಲಜಿಯಲ್ಲಿ ಪ್ರತಿ ಕ್ಲೈಂಟ್ ಪೂಲ್ನಿಂದ ಒಂದು ವಿಳಾಸವನ್ನು ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ; ಹಳೆಯ net30 ವಿನ್ಯಾಸಗಳು ಪ್ರತಿ ಕ್ಲೈಂಟ್ಗೆ ಸಣ್ಣ ಬ್ಲಾಕ್ ನೀಡುತ್ತವೆ ಮತ್ತು ಗಣಿತ ಸಂಪೂರ್ಣವಾಗಿ ಬೇರೆ. ಸರ್ವರ್ ಇನ್ನೂ net30 ನಲ್ಲಿದ್ದರೆ, ಈ ಪುಟ ತಪ್ಪಾದ ಸ್ಥಳಾಂತರ ಮಾರ್ಗದರ್ಶಿ ಮತ್ತು ಪೂಲ್ನ ಸಂಖ್ಯೆಗಳು ನೀವು ನಿರೀಕ್ಷಿಸಿದ ಅರ್ಥವನ್ನು ನೀಡುವುದಿಲ್ಲ. ಬೇರೆಡೆಯಿಂದ ವಿಳಾಸ ಗಣಿತವನ್ನು ನಕಲಿಸುವ ಮೊದಲು ಆ ಸಾಲನ್ನು ಪರಿಶೀಲಿಸಿ.
ಸರ್ವರ್ನ ಸ್ವಂತ ವಿಳಾಸ, ಕ್ಲೈಂಟ್ ಸಂರಚನಾ ಕೋಶದಲ್ಲಿನ ಪ್ರತಿ ಸ್ಥಿರ ನಿಯೋಜನೆ, ಮತ್ತು ಯಾವುದೇ ಮಾರ್ಗ ಅಥವಾ ಪ್ರವೇಶ ನಿಯಮ ಅವಲಂಬಿಸಿರುವ ಪ್ರತಿ ವಿಳಾಸವನ್ನು ಬರೆದಿಡಿ. ಚಲನಶೀಲ ಶ್ರೇಣಿಯ ಹೊರಗೆ ಉಳಿಯಬೇಕಾದವು ಇವೇ ವಿಳಾಸಗಳು. ಅವನ್ನು ಮೊದಲು ಬರೆದಿಡುವುದೇ ಶ್ರೇಣಿಯನ್ನು ಊಹೆಯ ಬದಲು ನಿರ್ಧಾರವನ್ನಾಗಿಸುತ್ತದೆ. ಇದು ಹಿಂಪಡೆಯುವಿಕೆಗೆ ಮರುಸ್ಥಾಪಿಸಲು ನಿರ್ದಿಷ್ಟವಾದದ್ದನ್ನೂ ನೀಡುತ್ತದೆ.
nopool ಸೇರಿಸಿ ಮತ್ತು ಶ್ರೇಣಿಯನ್ನು ಘೋಷಿಸಿ
ಸಹಾಯಕ ಕೀವರ್ಡ್ nopool ಅನ್ನು ಸ್ವೀಕರಿಸುತ್ತದೆ, ಅದು ಸಬ್ನೆಟ್ ಸಂರಚನೆಯನ್ನು ಉಳಿಸಿಕೊಂಡು ಸ್ವಯಂಚಾಲಿತ ಚಲನಶೀಲ ಪೂಲ್ ಅನ್ನು ನಿಗ್ರಹಿಸುತ್ತದೆ, OpenVPN 2.6 ಕೈಪಿಡಿ ವಿವರಿಸುವಂತೆ. ನಂತರ ಸ್ಪಷ್ಟ ifconfig-pool ಸಾಲು ನೀವು ಉದ್ದೇಶಿಸಿದ ಒಳಗೊಳ್ಳುವ ಶ್ರೇಣಿಯನ್ನು ನೀಡುತ್ತದೆ ಮತ್ತು ಅದರ ನೆಟ್ಮಾಸ್ಕ್ ಸಬ್ನೆಟ್ಗೆ ಹೊಂದುತ್ತದೆ. ಎರಡೂ ಸಾಲುಗಳು ಒಂದೇ ಸರ್ವರ್ ಬ್ಲಾಕ್ಗೆ ಸೇರುತ್ತವೆ, ಏಕೆಂದರೆ ತನ್ನ ಸಬ್ನೆಟ್ ಇಲ್ಲದ ಪೂಲ್ಗೆ ಅರ್ಥವಿಲ್ಲ. ಅವುಗಳ ನಡುವಿನ ಕ್ರಮ ಓದುಗೊಳ್ಳುವಿಕೆಗೆ ಮಾತ್ರ ಮುಖ್ಯ, ಏಕೆಂದರೆ ಸೇವೆ ಪ್ರಾರಂಭವಾದಾಗ ಸಹಾಯಕ ಜೋಡಿಯನ್ನು ವಿಸ್ತರಿಸುತ್ತದೆ.
topology subnet
server 10.70.0.0 255.255.255.0 nopool
ifconfig-pool 10.70.0.50 10.70.0.120 255.255.255.0ಎರಡೂ ಮಿತಿಗಳು ಒಳಗೊಳ್ಳುತ್ತವೆ, ಆದ್ದರಿಂದ ಉದಾಹರಣೆ ಎಪ್ಪತ್ತೊಂದು ವಿಳಾಸಗಳನ್ನು ನೀಡುತ್ತದೆ. ಸರ್ವರ್ ವಿಳಾಸ ಮತ್ತು ಪ್ರತಿ ಸ್ಥಿರ ನಿಯೋಜನೆಯನ್ನು ಆ ವ್ಯಾಪ್ತಿಯ ಹೊರಗೆ ಇರಿಸಿ; ಚಲನಶೀಲ ಶ್ರೇಣಿಯ ಒಳಗೆ ಬೀಳುವ ಸ್ಥಿರ ನಿಯೋಜನೆ ಸಂಪರ್ಕ ಕ್ರಮವನ್ನು ಅವಲಂಬಿಸಿರುವ ಘರ್ಷಣೆಯನ್ನು ಉಂಟುಮಾಡುತ್ತದೆ, ಮತ್ತು ಡೀಬಗ್ ಮಾಡಲು ಅದು ಅತ್ಯಂತ ಕೆಟ್ಟ ಬಗೆ. ಸ್ಥಿರ ನಿಯೋಜನೆಗಳು ಬೆಳೆಯುವ ಸಾಧ್ಯತೆ ಇದ್ದರೆ ಕಾಯ್ದಿರಿಸಿದ ಗುಂಪು ಮತ್ತು ಶ್ರೇಣಿಯ ನಡುವೆ ಅಂತರವಿಡಿ.
ಶ್ರೇಣಿಯ ಗಾತ್ರ ಮತ್ತು ಏಕಕಾಲಿಕತೆ ಬೇರೆ ಬೇರೆ ಮಿತಿಗಳು. max-clients ಬೇರೆ ಹೇಳದಿದ್ದರೆ ನೂರು ವಿಳಾಸಗಳು ನೂರು ಏಕಕಾಲಿಕ ಕ್ಲೈಂಟ್ಗಳಲ್ಲ, ಮತ್ತು ಏಕಕಾಲಿಕತೆಯ ಮಿತಿಗಿಂತ ದೊಡ್ಡ ಪೂಲ್ ವ್ಯರ್ಥವಲ್ಲ, ಸಾಮಾನ್ಯ. ಮುಖ್ಯವಾದದ್ದು ಎರಡೂ ಮಿತಿಗಳನ್ನು ಡೀಫಾಲ್ಟ್ನಿಂದ ಆನುವಂಶಿಕವಾಗಿ ಪಡೆಯದೆ ಉದ್ದೇಶಪೂರ್ವಕವಾಗಿ ಆಯ್ಕೆ ಮಾಡುವುದು.
ಸ್ಥಿರ ನಿಯೋಜನೆಗಳನ್ನು ಚಲನಶೀಲ ಶ್ರೇಣಿಯ ಹೊರಗೆ ಇರಿಸಿ
ಕ್ಲೈಂಟ್-ನಿರ್ದಿಷ್ಟ ifconfig-push ಪೂಲ್ ಹಂಚಿಕೆಗಿಂತ ಬೇರೆ ಕಾರ್ಯವಿಧಾನ ಮತ್ತು ಸಕ್ರಿಯ ಟೋಪೊಲಜಿಗೆ ಸೂಕ್ತವಾದ ನಿಯತಾಂಕಗಳನ್ನು ಬಳಸಬೇಕು. ಸಬ್ನೆಟ್ ಮೋಡ್ನಲ್ಲಿ ಅದು ಒಂದು ವಿಳಾಸ ಮತ್ತು ನೆಟ್ಮಾಸ್ಕ್; ಹಳೆಯ ಉದಾಹರಣೆಯಲ್ಲಿ ಕಂಡಿದ್ದರಿಂದ net30 ಜೋಡಿಯನ್ನು ಎತ್ತಿಕೊಂಡು ಬರುವುದು ಸಾಮಾನ್ಯ ತಪ್ಪು.
ಹಂಚಿಕೆಯ ಇತಿಹಾಸ ಸೂಚನೆ, ಅಧಿಕಾರವಲ್ಲ. persist ಫೈಲ್ ಯಾವ ಕ್ಲೈಂಟ್ಗೆ ಯಾವ ವಿಳಾಸ ಇತ್ತು ಎಂದು ನೆನಪಿಡುತ್ತದೆ, ಆದ್ದರಿಂದ ಮತ್ತೆ ಸಂಪರ್ಕಿಸುವ ಕ್ಲೈಂಟ್ಗಳು ಸಾಮಾನ್ಯವಾಗಿ ಅದೇ ವಿಳಾಸ ಪಡೆಯುತ್ತವೆ, ಮತ್ತು ಅದು ವಿಳಾಸಗಳನ್ನು ಕಾಯ್ದಿರಿಸುವುದಿಲ್ಲ, ಬಿಡುಗಡೆ ಮಾಡುವುದಿಲ್ಲ ಅಥವಾ ಸ್ಥಿರ ನಿಯೋಜನೆಯನ್ನು ಬದಲಿಸುವುದಿಲ್ಲ. ನಿರ್ದಿಷ್ಟ ಸಾಧನ ಯಾವಾಗಲೂ ನಿರ್ದಿಷ್ಟ ವಿಳಾಸ ಹೊಂದಿರಬೇಕಿದ್ದರೆ, persist ಫೈಲ್ ಮೇಲೆ ಅವಲಂಬಿಸುವ ಬದಲು ಸ್ಥಿರ ನಿಯೋಜನೆ ಬಳಸಿ.
ನಂತರ ವಿಳಾಸಗಳ ಮೇಲೆ ಅವಲಂಬಿತವಾದ ಮಾರ್ಗಗಳನ್ನು ಪರಿಶೀಲಿಸಿ. ಕ್ಲೈಂಟ್ಗಳಿಗೆ ತಳ್ಳಲಾದ ಮಾರ್ಗ, ಸಬ್ನೆಟ್ ಅನ್ನು ಅನುಮತಿಸುವ ಫೈರ್ವಾಲ್ ನಿಯಮ, ಅಥವಾ ನಿರ್ದಿಷ್ಟ ಹೋಸ್ಟ್ ನಿರೀಕ್ಷಿಸುವ ಮಾನಿಟರಿಂಗ್ ಪರಿಶೀಲನೆ — ಎಲ್ಲವೂ ಹಳೆಯ ಶ್ರೇಣಿಯನ್ನು ಊಹಿಸಬಹುದು. ಅವನ್ನು ಓದದೆ ಪೂಲ್ ಬದಲಿಸುವುದು ವೈಫಲ್ಯವನ್ನು ಸಂಬಂಧವಿಲ್ಲದಂತೆ ಕಾಣುವ ಸ್ಥಳಕ್ಕೆ ಸರಿಸುತ್ತದೆ.
ಜೀವನಚಕ್ರದ ಮೂಲಕ ಅನ್ವಯಿಸಿ, ನಂತರ ಪರಿಶೀಲಿಸಿ
ಸೇವೆ ಸಾಮಾನ್ಯವಾಗಿ ಸಂರಚನೆಯನ್ನು ಸ್ವೀಕರಿಸುವ ರೀತಿಯಲ್ಲೇ ಬದಲಾವಣೆಯನ್ನು ಅನ್ವಯಿಸಿ — ನೇರ ಫೈಲ್ ಮತ್ತು ಮರುಪ್ರಾರಂಭ, ಅಥವಾ ಫೈಲ್ ಅನ್ನು ಮರುಸೃಷ್ಟಿಸುವ ನಿರ್ವಹಣಾ ಪದರ. ರಚಿಸಲಾದ ಫೈಲ್ಗೆ ಕೈಯಿಂದ ಮಾಡಿದ ಬದಲಾವಣೆ ಮುಂದಿನ ಸೃಷ್ಟಿಯವರೆಗೆ ಇರುತ್ತದೆ, ಅದಕ್ಕಿಂತ ಹೆಚ್ಚಲ್ಲ. ಯಾವ ಕಾರ್ಯವಿಧಾನ ಫೈಲ್ನ ಮಾಲೀಕ ಎಂದು ದಾಖಲಿಸಿ, ಏಕೆಂದರೆ ಮುಂದಿನ ನಿರ್ವಾಹಕರು ಅದೇ ಬದಲಾವಣೆಯನ್ನು ಎಲ್ಲಿ ಮಾಡಬೇಕೆಂದು ತಿಳಿಯಬೇಕು. ನಂತರ ಒಮ್ಮೆ ಮರುಪ್ರಾರಂಭಿಸಿ ಮತ್ತು ಕ್ಲೈಂಟ್ ಆಹ್ವಾನಿಸುವ ಮೊದಲು ಲಾಗ್ ಓದಿ.
systemctl restart openvpn-server@lab
journalctl -u openvpn-server@lab -n 30 --no-pager
# on a fresh client
ip -4 addr show tun0ಮೊದಲು ಸಂಪರ್ಕಿಸದಿದ್ದ ಕ್ಲೈಂಟ್ ಅನ್ನು ಸಂಪರ್ಕಿಸಿ ಮತ್ತು ವಿಳಾಸವು ಘೋಷಿತ ಶ್ರೇಣಿಯ ಒಳಗೆ ಮತ್ತು ಕಾಯ್ದಿರಿಸಿದ ಗುಂಪಿನ ಹೊರಗೆ ಬೀಳುತ್ತದೆ ಎಂದು ದೃಢೀಕರಿಸಿ. ನಂತರ ಮರಳು ಮಾರ್ಗವನ್ನು ದೃಢೀಕರಿಸಿ: ನೀತಿ ಅನುಮತಿಸುವುದನ್ನು ಕ್ಲೈಂಟ್ ತಲುಪಬೇಕು, ಅದಕ್ಕಿಂತ ಹೆಚ್ಚಲ್ಲ. ಯೋಜನೆಗೆ ಹೊಂದುವ ಆದರೆ ಕೆಲಸ ಮಾಡುವ ಮಾರ್ಗವಿಲ್ಲದ ವಿಳಾಸ ಯಶಸ್ವಿ ಬದಲಾವಣೆಯಲ್ಲ.
ಹಳೆಯ ಶ್ರೇಣಿಯಿಂದ ವಿಳಾಸ ಹೊಂದಿದ್ದ ಕ್ಲೈಂಟ್ ಅನ್ನು ಮತ್ತೆ ಸಂಪರ್ಕಿಸಿ. ಅದು ಹೊಸ ಶ್ರೇಣಿಯಿಂದ ವಿಳಾಸ ಪಡೆಯಬೇಕು, ಮತ್ತು ಹಳೆಯ ವಿಳಾಸಕ್ಕೆ ಬದ್ಧವಾದ ಯಾವುದೇ ಅಧಿವೇಶನ ಮಟ್ಟದ ಸ್ಥಿತಿ ಹೋಗಿರಬೇಕು. ಅದು ಹಳೆಯ ವಿಳಾಸವನ್ನೇ ಉಳಿಸಿಕೊಂಡರೆ, ಬೇರೆ ಯಾವುದೋ ಅದನ್ನು ನಿಯೋಜಿಸುತ್ತಿದೆ ಮತ್ತು ಪೂಲ್ ನೀವು ಭಾವಿಸುವ ಮಾಲೀಕನಲ್ಲ.
ಶ್ರೇಣಿ ಬದಲಾವಣೆಯನ್ನು ಹಿಂಪಡೆಯುವುದು
ನಿಮ್ಮ ಬದಲಾವಣೆ ದಾಖಲೆಯಲ್ಲಿ ಹಿಂದಿನ ಮೂರು ಸಾಲುಗಳನ್ನು ಇರಿಸಿ, ಹಿಂದಿನ ಫೈಲ್ ಮಾತ್ರವಲ್ಲ. ಅವನ್ನು ಮರುಸ್ಥಾಪಿಸಿ ಮರುಪ್ರಾರಂಭಿಸಿದರೆ ಹಂಚಿಕೆ ಹಳೆಯ ವರ್ತನೆಗೆ ಮರಳುತ್ತದೆ, ಮತ್ತು ನಂತರ ಮತ್ತೆ ಸಂಪರ್ಕಿಸುವ ಕ್ಲೈಂಟ್ಗಳು ಅಲ್ಲಿಂದ ವಿಳಾಸ ಪಡೆಯುತ್ತವೆ.
ದಾಖಲೆಗೆ ಎರಡು ಎಚ್ಚರಿಕೆಗಳು ಸೇರುತ್ತವೆ. ಹಿಂಪಡೆಯುವಾಗ ಈಗಾಗಲೇ ಸಂಪರ್ಕದಲ್ಲಿರುವ ಕ್ಲೈಂಟ್ಗಳು ಮತ್ತೆ ಸಂಪರ್ಕಿಸುವವರೆಗೆ ತಮ್ಮ ಪ್ರಸ್ತುತ ವಿಳಾಸಗಳನ್ನು ಉಳಿಸಿಕೊಳ್ಳುತ್ತವೆ, ಆದ್ದರಿಂದ ಹಿಂಪಡೆಯುವಿಕೆ ಇಡೀ ನೌಕಾಪಡೆಯಲ್ಲಿ ತಕ್ಷಣವಲ್ಲ. ಮತ್ತು ಹಳೆಯ ಶ್ರೇಣಿ ಸ್ಥಿರ ನಿಯೋಜನೆಯೊಂದಿಗೆ ಅತಿಕ್ರಮಿಸಿದ್ದರೆ, ಅದನ್ನು ಮರುಸ್ಥಾಪಿಸುವುದು ಘರ್ಷಣೆಯನ್ನೂ ಮರುಸ್ಥಾಪಿಸುತ್ತದೆ; ಆ ಅತಿಕ್ರಮಣವೇ ಬದಲಾವಣೆಯ ಕಾರಣವಾಗಿತ್ತು, ಮತ್ತು ಅದಕ್ಕೆ ಹಿಂಪಡೆಯುವಿಕೆಗಿಂತ ಬೇರೆ ಪರಿಹಾರ ಬೇಕು.
ಹೊಸ ಕ್ಲೈಂಟ್ ಶ್ರೇಣಿಯ ಒಳಗಿನ ವಿಳಾಸ ಪಡೆದಾಗ, ಕಾಯ್ದಿರಿಸಿದ ವಿಳಾಸ ಎಂದಿಗೂ ನೀಡದಿದ್ದಾಗ, ಮತ್ತು ಆ ವಿಳಾಸಗಳನ್ನು ಬಳಸುವ ಮಾರ್ಗಗಳು ಹಾಗೂ ನಿಯಮಗಳು ಉದ್ದೇಶಿಸಿದಂತೆ ವರ್ತಿಸುತ್ತಿದ್ದಾಗ ಪೂಲ್ ಬದಲಾವಣೆ ಮುಗಿದಿರುತ್ತದೆ. ಅದಕ್ಕಿಂತ ಕಡಿಮೆ ಏನಾದರೂ ಮುಂದಿನ ವ್ಯಕ್ತಿಗೆ ಮೂರರಲ್ಲಿ ಯಾವುದು ನಿಜವಲ್ಲ ಎಂದು ಕಂಡುಹಿಡಿಯಲು ಬಿಡುತ್ತದೆ.