ಎರಡು ಆರೋಗ್ಯಕರ VPN ನಿರ್ಗಮನಗಳು, ಈಗಾಗಲೇ ಚಾಲನೆಯಲ್ಲಿರುವ ಒಂದು ಉದ್ದದ ಅಪ್ಲೋಡ್, ಮತ್ತು ಮುಂದಿನ ಸಂಪರ್ಕವು ಇನ್ನೊಂದು ಸುರಂಗವನ್ನು ಬಳಸಬೇಕೆಂಬ ಅಗತ್ಯ. ಇದನ್ನು ಪೂರೈಸಲು ಎರಡು ದಾರಿಗಳಿವೆ, ಮತ್ತು ಅವುಗಳಲ್ಲಿ ಒಂದೇ ಸಕ್ರಿಯ ಗೇಟ್‌ವೇಯಲ್ಲಿ ಸುರಕ್ಷಿತವಾಗಿದೆ. ಡೀಫಾಲ್ಟ್ ರೂಟ್ ಬದಲಿಸುವುದು ಪ್ರತಿ ಪ್ಯಾಕೆಟ್ ಅನ್ನು ಸರಿಸುತ್ತದೆ, ಅಪ್ಲೋಡ್‌ಗೆ ಸೇರಿದ ಪ್ಯಾಕೆಟ್‌ಗಳನ್ನೂ ಸೇರಿಸಿ. ಯೋಜಿತ ಡ್ರೇನ್ ಹೊಸ ಸಂಪರ್ಕಗಳಿಗೆ ಆಯ್ಕೆಯನ್ನು ಬದಲಿಸುತ್ತದೆ ಮತ್ತು ಟ್ರ್ಯಾಕ್ ಮಾಡಿದ ಹರಿವುಗಳನ್ನು ಅವು ಪ್ರಾರಂಭವಾದ ಮಾರ್ಗದಲ್ಲೇ ಬಿಡುತ್ತದೆ.

ನಿರ್ಗಮನವನ್ನು ಬದಲಿಸುವ ಎರಡು ದಾರಿಗಳು

ರೂಟ್ ಬದಲಾವಣೆ ಒಂದೇ ಆಜ್ಞೆ ಮತ್ತು ಸೆಕೆಂಡುಗಳಲ್ಲಿ ಹಿಂತಿರುಗಿಸಬಹುದು, ಆದ್ದರಿಂದ ಘಟನೆಗಳ ಸಮಯದಲ್ಲಿ ಇದನ್ನು ಬಳಸಲಾಗುತ್ತದೆ. ಇದು ಭೇದವಿಲ್ಲದೆಯೂ ಇದೆ: ಇರುವ ಅಪ್ಲೋಡ್‌ನ ಪ್ಯಾಕೆಟ್‌ಗಳು ಇದ್ದಕ್ಕಿದ್ದಂತೆ ಬೇರೆ ಸುರಂಗದ ಮೂಲಕ ಹೊರಡುತ್ತವೆ, ಬೇರೆ ಸಾರ್ವಜನಿಕ ಮೂಲ ವಿಳಾಸ ಮತ್ತು ಪ್ರತ್ಯೇಕ ಅನುವಾದ ಸ್ಥಿತಿಯೊಂದಿಗೆ.

ದೂರದ ತುದಿ ಹರಿವುಗಳನ್ನು ಮೂಲ ವಿಳಾಸದಿಂದ ಟ್ರ್ಯಾಕ್ ಮಾಡುತ್ತಿದ್ದರೆ, ಅಪ್ಲೋಡ್ ಸುಮ್ಮನೆ ಗುರುತಿಸಲ್ಪಡದೇ ಹೋಗಬಹುದು. ಡ್ರೇನ್ ಇದನ್ನು ತಪ್ಪಿಸುವುದು ಪ್ರತಿ ಸಂಪರ್ಕಕ್ಕೂ ಒಮ್ಮೆ ನಿರ್ಧಾರ ತೆಗೆದುಕೊಂಡು ಅದನ್ನು ಸಂಗ್ರಹಿಸುವ ಮೂಲಕ, ಆದ್ದರಿಂದ ಹಳೆಯ ಅಪ್ಲೋಡ್ ಮುಗಿಯುವವರೆಗೂ ತನ್ನ ನಿರ್ಗಮನವನ್ನು ಉಳಿಸಿಕೊಳ್ಳುತ್ತದೆ. ಇದೇ ಈ ಅಭ್ಯಾಸದ ಸಂಪೂರ್ಣ ಮೌಲ್ಯ: ದೂರದ ತುದಿ ವ್ಯಾಖ್ಯಾನಿಸಬೇಕಾದ ಯಾವುದೇ ಬದಲಾವಣೆಯನ್ನು ನೋಡುವುದಿಲ್ಲ. ಅದು ಈಗಾಗಲೇ ತಿಳಿದಿರುವ ಸಂಪರ್ಕಕ್ಕೆ ಹೊಂದುವ ಪ್ಯಾಕೆಟ್‌ಗಳನ್ನು ಸ್ವೀಕರಿಸುತ್ತಲೇ ಇರುತ್ತದೆ.

ಬೆಲೆ ಸಂಕೀರ್ಣತೆ: ಎರಡು ರೂಟಿಂಗ್ ಕೋಷ್ಟಕಗಳು, ಸರಿಯಾದ ಕೊಕ್ಕೆಯಲ್ಲಿ ಚಲಿಸುವ ವರ್ಗೀಕರಣಕಾರ, ಮತ್ತು ಯಂತ್ರದಲ್ಲಿನ ಅವನ್ನು ಬಳಸುವ ಎಲ್ಲದರೊಂದಿಗೂ ಸಂಯೋಜಿಸಬೇಕಾದ ಗುರುತುಗಳು.

ಪ್ರತಿ ನಿರ್ಗಮನಕ್ಕೂ ಅದರದೇ ಕೋಷ್ಟಕ ನೀಡಿ

ಪ್ರತಿ ನಿರ್ಗಮನಕ್ಕೂ ಒಂದು ರೂಟಿಂಗ್ ಕೋಷ್ಟಕ ಮತ್ತು ಎರಡು ಆಯ್ಕೆಗಳಿಗೆ ಪ್ರತ್ಯೇಕ ಗುರುತು ಮೌಲ್ಯಗಳು ಅಥವಾ ಬಿಟ್‌ಗಳನ್ನು ಕಾಯ್ದಿರಿಸಿ. ಪ್ರತಿ ಕೋಷ್ಟಕಕ್ಕೂ ಕೇವಲ ಹೆಸರಲ್ಲ, ಅದರ ಪಾತ್ರಕ್ಕೆ ಸರಿಹೊಂದುವ ಮಾರ್ಗಗಳು ಬೇಕು, ಮತ್ತು ಕಾಣೆಯಾದ ಸಂದರ್ಭಕ್ಕೆ ಉದ್ದೇಶಪೂರ್ವಕ ವೈಫಲ್ಯದ ಫಲಿತಾಂಶ ಬೇಕು. ಮುಖ್ಯ ಕೋಷ್ಟಕಕ್ಕೆ ಸದ್ದಿಲ್ಲದೆ ಬೀಳುವ ಖಾಲಿ ಕೋಷ್ಟಕ — ಯಾರೂ ಆಯ್ಕೆ ಮಾಡದ ನಿರ್ಗಮನದಿಂದ ಸಂಚಾರ ಹೊರಡುವುದು ಹೀಗೆ.

ip rule add fwmark 0x10/0x10 table 101
ip rule add fwmark 0x20/0x20 table 102
ip route add default via 192.0.2.1 dev wg-a table 101
ip route add default via 198.51.100.1 dev wg-b table 102

ಪ್ರತಿ ಕೋಷ್ಟಕದ ಕೊನೆಯಲ್ಲಿ blackhole ಮಾರ್ಗ ಸೇರಿಸಿ, ಹೊಂದಿಕೆ ಸಿಗದ ಹುಡುಕಾಟ ನೀವು ಆಯ್ಕೆ ಮಾಡದ ಡೀಫಾಲ್ಟ್‌ಗೆ ತಪ್ಪಿಸಿಕೊಳ್ಳುವ ಬದಲು ಗಟ್ಟಿಯಾಗಿ ವಿಫಲವಾಗಲಿ.

ಒಮ್ಮೆ ಆಯ್ಕೆ ಮಾಡಿ, ಮೊದಲ ಪ್ಯಾಕೆಟ್‌ನಲ್ಲಿ

ಸಂಪರ್ಕ ಟ್ರ್ಯಾಕಿಂಗ್ ಇದ್ದ ಮೇಲೆ ಮತ್ತು ಮುಖ್ಯವಾದ ರೂಟ್ ಹುಡುಕಾಟಕ್ಕೆ ಮೊದಲು ವರ್ಗೀಕರಿಸಿ. ಹೊಸ, ವರ್ಗೀಕರಿಸದ LAN ಸಂಪರ್ಕಕ್ಕೆ ನಿರ್ಗಮನವನ್ನು ಆಯ್ಕೆ ಮಾಡಿ ಅದನ್ನು ಸಂಪರ್ಕ ಸ್ಥಿತಿಯಲ್ಲಿ ಉಳಿಸಿ. ಮುಂದಿನ ಪ್ಯಾಕೆಟ್‌ಗಳಲ್ಲಿ, ನೀತಿ ರೂಟಿಂಗ್ ಓದುವ ಪ್ಯಾಕೆಟ್ ಗುರುತಿಗೆ ಉಳಿಸಿದ ಮೌಲ್ಯವನ್ನು ಮರುಸ್ಥಾಪಿಸಿ.

ಸೂಕ್ಷ್ಮ ಭಾಗ ಹೊಸ ಎಂದರೆ ಏನು ಎಂಬುದು. ಉತ್ತರ ಕಾಣುವ ಮೊದಲು ಆರಂಭಿಕ ಪ್ಯಾಕೆಟ್‌ಗಳು ಮತ್ತು ಮರುಪ್ರಸಾರಗಳಿಗೆ conntrack ಇನ್ನೂ NEW ವರದಿ ಮಾಡಬಹುದು, ಆದ್ದರಿಂದ ಆ ಸ್ಥಿತಿಯ ಮೇಲೆಯೇ ಅವಲಂಬಿತವಾದ ವರ್ಗೀಕರಣಕಾರ ಈಗಾಗಲೇ ಮಾಡಿದ ಆಯ್ಕೆಯನ್ನು ಬರೆದುಬಿಡಬಹುದು. ನಿಯೋಜಿಸುವ ಮೊದಲು ಸಂಪರ್ಕಕ್ಕೆ ಯಾವುದೇ ನಿರ್ಗಮನ ಉಳಿಸಿಲ್ಲ ಎಂದು ಪರಿಶೀಲಿಸಿ.

nftables ಪ್ಯಾಕೆಟ್ ಮತ್ತು ಸಂಪರ್ಕ ಗುರುತುಗಳನ್ನು ಪ್ರತ್ಯೇಕವಾಗಿ ಇಡುತ್ತದೆ, ಮತ್ತು ಮೆಟಾಮಾಹಿತಿ ಮಾರ್ಗದರ್ಶಿ ಅವುಗಳ ನಡುವಿನ ಸ್ಪಷ್ಟ ನಕಲನ್ನು ದಾಖಲಿಸುತ್ತದೆ. ಸಂಪರ್ಕ ಗುರುತು ತಾನಾಗಿಯೇ ನಿಮ್ಮ ನಿಯಮ ಹೊಂದುವ ಪ್ಯಾಕೆಟ್ ಗುರುತಾಗುವುದಿಲ್ಲ, ಮತ್ತು ಎಚ್ಚರಿಕೆಯಿಂದ ಬರೆದ ವರ್ಗೀಕರಣಕಾರಕ್ಕೆ ಯಾವುದೇ ಪರಿಣಾಮ ಇಲ್ಲದಿರುವುದಕ್ಕೆ ಇದೇ ಸಾಮಾನ್ಯ ಕಾರಣ.

ಮರುಸ್ಥಾಪನೆಯನ್ನು ನೀವು ಉದ್ದೇಶಿಸಿದ ದಿಕ್ಕು ಮತ್ತು ಸಂಚಾರಕ್ಕೆ ಸೀಮಿತಗೊಳಿಸಿ. ಹಿಂತಿರುಗುವ ಪ್ಯಾಕೆಟ್‌ಗಳಿಗೆ ಇಂಟರ್ನೆಟ್-ನಿರ್ಗಮನ ಗುರುತನ್ನು ಅನ್ವಯಿಸುವುದು ಉತ್ತರಗಳನ್ನು LAN ಬದಲು ನಿರ್ಗಮನದ ಕಡೆಗೆ ಕಳುಹಿಸಬಹುದು, ಮತ್ತು ಲಕ್ಷಣ ಫೈರ್‌ವಾಲ್ ಸಮಸ್ಯೆಯಂತೆ ಕಾಣುವ ಏಕಮುಖ ಸಂಪರ್ಕ. ಫೈರ್‌ವಾಲ್ ನಿಯಮ ಮುಟ್ಟುವ ಮೊದಲು ಉತ್ತರದ ಮಾರ್ಗ ಓದಿ, ಏಕೆಂದರೆ ಪ್ಯಾಕೆಟ್ ರೂಟ್ ಆಗುತ್ತಿದೆ, ಕೇವಲ ಕಳುಹಿಸಿದವರಿಗೆ ಹಿಂತಿರುಗುತ್ತಿಲ್ಲ.

ಡ್ರೇನ್‌ನ ನಾಲ್ಕು ಹಂತಗಳು

  1. A ಮುಟ್ಟದೆ B ಸಿದ್ಧಪಡಿಸಿ: ರೂಟಿಂಗ್, ಫಾರ್ವರ್ಡಿಂಗ್, ಅಧಿಕಾರ, NAT ಮತ್ತು ಹಿಂತಿರುಗುವ ಮಾರ್ಗ. ಗೇಟ್‌ವೇಯ ಇರುವ ಸಂರಚನಾ ಮಾಲೀಕರ ಮೂಲಕ ಅದರ ಕೋಷ್ಟಕ ಮತ್ತು ಆಯ್ಕೆ ನೀತಿಯನ್ನು ಸ್ಥಾಪಿಸಿ.

  2. ವರ್ಗೀಕರಣಕಾರ ಬದಲಿಸಿ, ಹೊಸ, ವರ್ಗೀಕರಿಸದ ಸಂಪರ್ಕಗಳು B ಆಯ್ಕೆ ಮಾಡಲಿ, ಉಳಿಸಿದ ಆಯ್ಕೆಗಳು ಉಳಿಯಲಿ. ಪರಮಾಣು nftables ವಹಿವಾಟು ಹಳೆಯ ಸ್ಥಿತಿಯನ್ನು ತೆರವು ಮಾಡಬೇಕಾದ ಕಿಟಕಿಯನ್ನು ತಪ್ಪಿಸುತ್ತದೆ.

  3. A ಯ ಹರಿವುಗಳು ಮುಗಿಯುವವರೆಗೂ A ಚಾಲನೆಯಲ್ಲಿರಲಿ. ಅದರ ಇಂಟರ್‌ಫೇಸ್, ಕೋಷ್ಟಕ, ದೂರದ ನಿರ್ಗಮನ ಮತ್ತು NAT ಮ್ಯಾಪಿಂಗ್‌ಗಳು ಇನ್ನೂ ಆ ಹರಿವುಗಳ ಭಾಗ, ಮತ್ತು NAT ನಿಯಮ ಸಂಪಾದಿಸುವುದು ಈಗಾಗಲೇ ಇರುವ ಬಂಧನಗಳನ್ನು ಮತ್ತೆ ಕಟ್ಟುವುದಿಲ್ಲ.

  4. ಡ್ರೇನ್ ಷರತ್ತು ಪೂರೈಸಿದಾಗ A ನಿವೃತ್ತಿಗೊಳಿಸಿ, ಇದು ಒಂದು ಶಾಂತ ಮಧ್ಯಂತರದಿಂದ ಅಲ್ಲ, ಸಂಪರ್ಕ ಸ್ಥಿತಿ ಮತ್ತು ಅಪ್ಲಿಕೇಶನ್ ವರ್ತನೆಯಿಂದ ನಿರ್ಣಯಿಸಲ್ಪಡುತ್ತದೆ.

ಡ್ರೇನ್ ಏನನ್ನು ಭರವಸೆ ನೀಡಲಾಗದು

ಬ್ರೌಸರ್ ವಿನಂತಿ ಹೊಸ ಸಾರಿಗೆ ಸಂಪರ್ಕವಲ್ಲ; ಪೂಲಿಂಗ್ ಹಳೆಯದರ ಮೇಲೆಯೇ ವಿನಂತಿಗಳನ್ನು ಕಳುಹಿಸುತ್ತದೆ. ಇದಕ್ಕೆ ವಿರುದ್ಧವಾಗಿ, UDP ಹರಿವು conntrack‌ನಿಂದ ವಯಸ್ಸಾಗಬಹುದು ಮತ್ತು ನಂತರದ ಪ್ಯಾಕೆಟ್ ಹೊಸದಾಗಿ ವರ್ಗೀಕರಿಸಲ್ಪಡುತ್ತದೆ. ಡ್ರೇನ್ ಟ್ರ್ಯಾಕ್ ಮಾಡಿದ ಹರಿವುಗಳನ್ನು ಅನುಸರಿಸುತ್ತದೆ, ಅಪ್ಲಿಕೇಶನ್‌ನ ಸೆಷನ್ ಕಲ್ಪನೆಯನ್ನು ಅಲ್ಲ.

A ತನ್ನ ಹರಿವುಗಳು ಮುಗಿಯುವ ಮೊದಲು ವಿಫಲವಾದರೆ, ಉಳಿಸಿದ ಗುರುತು ಅವನ್ನು ಉಳಿಸುವುದಿಲ್ಲ. ಅವು B ಮೂಲಕ ಮತ್ತೆ ಸಂಪರ್ಕಗೊಳ್ಳುತ್ತವೆ, ಅಥವಾ ಸಂಪರ್ಕಗೊಳ್ಳುವುದೇ ಇಲ್ಲ. ಯೋಜಿತ ಡ್ರೇನ್ ಮೂಲ ಮಾರ್ಗ ಆರೋಗ್ಯಕರವಾಗಿರುವವರೆಗೂ ನಿರಂತರತೆಯನ್ನು ಕೊಳ್ಳುತ್ತದೆ; ಇದು ಸ್ವತಂತ್ರ ನಿರ್ಗಮನಗಳ ನಡುವಿನ ಸ್ಥಿತಿ ಪ್ರತಿಕೃತಿ ಅಲ್ಲ.

ಎರಡೂ ಅರ್ಧಗಳನ್ನು ಪರಿಶೀಲಿಸಿ

ಬದಲಾವಣೆಗೆ ಮೊದಲು ದೀರ್ಘಕಾಲದ ಅನುಮತಿಸಿದ ಸಂಪರ್ಕ ಮತ್ತು ನಂತರ ನಿಜವಾದ ಹೊಸದನ್ನು ಪ್ರಾರಂಭಿಸಿ. ಪ್ರತಿಯೊಂದೂ ಯಾವ ಸುರಂಗ ಬಳಸುತ್ತದೆ ಮತ್ತು ದೂರದ ತುದಿ ಯಾವ ಸಾರ್ವಜನಿಕ ಮೂಲ ವಿಳಾಸ ನೋಡುತ್ತದೆ ಎಂದು ದೃಢೀಕರಿಸಿ, ನಂತರ ಹಿಂತಿರುಗುವ ಸಂಚಾರ ವಾಪಸ್ ಬರುತ್ತದೆಯೇ ಎಂದು ಪರಿಶೀಲಿಸಿ.

ಹೊಸ ಆಯ್ಕೆ ಕಾಣಿಸಲು conntrack ಕೋಷ್ಟಕವನ್ನು ಖಾಲಿ ಮಾಡಬೇಡಿ. ಅದು ಡ್ರೇನ್ ಸಂರಕ್ಷಿಸಬೇಕಾದ ಸ್ಥಿತಿಯನ್ನೇ ನಾಶಪಡಿಸುತ್ತದೆ, ಮತ್ತು ನಿಯಂತ್ರಿತ ವಲಸೆಯನ್ನು ಸ್ವಚ್ಛವಾಗಿ ಕಾಣುವ ಪರೀಕ್ಷೆಯೊಂದಿಗೆ ಅಡಚಣೆಯಾಗಿ ಪರಿವರ್ತಿಸುತ್ತದೆ.

ಸಂಬಂಧಿತ ಲೇಖನಗಳು