ಸರ್ವರ್ ಮೊದಲು ಏನಾದರೂ ಕಳುಹಿಸಿದ ನಂತರವೇ ಸುರಂಗ ಕೆಲಸ ಮಾಡುತ್ತಿರುವಂತೆ ಕಾಣುತ್ತದೆ. ಕ್ಲೈಂಟ್‌ನಿಂದ ಪ್ರಾರಂಭಿಸಿ ಏನೂ ಆಗುವುದಿಲ್ಲ, ಕೆಲವು ಸೆಕೆಂಡುಗಳು ಕಾಯಿರಿ, ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ ಮತ್ತು ಅದು ಯಶಸ್ವಿಯಾಗುತ್ತದೆ. ಸಾಮಾನ್ಯ ರೋಗನಿರ್ಣಯ ಮುರಿದ NAT, ಮತ್ತು ಸಾಮಾನ್ಯ ರೋಗನಿರ್ಣಯ ತಪ್ಪು. ಬದಲಾದದ್ದು ಏನೆಂದರೆ ಒಂದು ಪಿಯರ್ ಇನ್ನೊಂದು ಎಲ್ಲಿದೆ ಎಂದು ತಿಳಿಯಿತು.

ಎಂಡ್‌ಪಾಯಿಂಟ್ ಜ್ಞಾನ, ತಲುಪುವಿಕೆ ಅಲ್ಲ

WireGuard ಪಿಯರ್ ಎಲ್ಲಿಗೆ ಕಳುಹಿಸಬೇಕೆಂದು ತಿಳಿಯುವವರೆಗೆ ಹ್ಯಾಂಡ್‌ಶೇಕ್ ಪ್ರಾರಂಭಿಸುವುದಿಲ್ಲ. ಕಾನ್ಫಿಗರೇಶನ್ ಅದನ್ನು ವಿಳಾಸ ಮತ್ತು ಪೋರ್ಟ್‌ನ ಎಂಡ್‌ಪಾಯಿಂಟ್ ಆಗಿ ನೀಡುತ್ತದೆ, ಮತ್ತು ಚಾಲನೆಯಲ್ಲಿರುವ ಸ್ಥಿತಿ ಈಗ ಅದು ನಂಬುವ ಎಂಡ್‌ಪಾಯಿಂಟ್ ಅನ್ನು ಟ್ರ್ಯಾಕ್ ಮಾಡುತ್ತದೆ.

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

ಪಿಯರ್ ಎಂಡ್‌ಪಾಯಿಂಟ್ ಅನ್ನು ಹೇಗೆ ಕಲಿಯುತ್ತದೆ

WireGuard ಉದ್ದೇಶಪೂರ್ವಕವಾಗಿ ಶಾಂತವಾಗಿದೆ. ಸರಿಯಾಗಿ ದೃಢೀಕರಿಸಿದ ಪ್ಯಾಕೆಟ್ ಪಿಯರ್ ನಿರೀಕ್ಷಿಸದ ವಿಳಾಸದಿಂದ ಬಂದಾಗ, ಅನುಷ್ಠಾನವು ಆ ಪಿಯರ್‌ನ ಎಂಡ್‌ಪಾಯಿಂಟ್ ಅನ್ನು ಹೊಸ ಮೂಲಕ್ಕೆ ನವೀಕರಿಸುತ್ತದೆ, ಮತ್ತು ನೆಟ್‌ವರ್ಕ್ ಬದಲಾಯಿಸುವ ಲ್ಯಾಪ್‌ಟಾಪ್‌ನಲ್ಲಿ ರೋಮಿಂಗ್ ಹೀಗೆ ಕೆಲಸ ಮಾಡುತ್ತದೆ. ಆ ವರ್ತನೆ ದಿಕ್ಕು-ಅವಲಂಬನೆಯನ್ನು ವಿವರಿಸುತ್ತದೆ: ಸರ್ವರ್ ಮೊದಲು ಕಳುಹಿಸಿ ಅದರ ಪ್ಯಾಕೆಟ್ ಕ್ಲೈಂಟ್‌ಗೆ ತಲುಪಿದರೆ, ಕ್ಲೈಂಟ್ ಸರ್ವರ್‌ನ ಪ್ರಸ್ತುತ ವಿಳಾಸವನ್ನು ಕಲಿಯುತ್ತದೆ ಮತ್ತು ಉತ್ತರಿಸಬಲ್ಲದು. ಅಲ್ಲಿಯವರೆಗೆ ಅದಕ್ಕೆ ಕಳುಹಿಸುವ ಸ್ಥಳವಿಲ್ಲ. ಈ ಕಾರ್ಯವಿಧಾನ ಮೊದಲ ಬಳಕೆಯ ನಂಬಿಕೆಯ ಶಾರ್ಟ್‌ಕಟ್ ಅಲ್ಲ, ದೃಢೀಕೃತ ರೋಮಿಂಗ್, ಏಕೆಂದರೆ ಎಂಡ್‌ಪಾಯಿಂಟ್ ಚಲಿಸುವ ಮೊದಲು ಪ್ಯಾಕೆಟ್ ಮಾನ್ಯವಾಗಿರಬೇಕಿತ್ತು.

wg ಗಾಗಿ ಪರಿಕರ ದಾಖಲೆ ಆ ನವೀಕರಣವನ್ನು ವಿವರಿಸುತ್ತದೆ, ಮತ್ತು ಅದರ ಸುತ್ತ ವಿನ್ಯಾಸ ಮಾಡಲು ಹೊರಟರೆ ಒಮ್ಮೆ ಓದುವುದು ಯೋಗ್ಯ.

ಸ್ಥಿತಿ ಇರುವ ಅನುವಾದ ತನ್ನದೇ ದಿಕ್ಕನ್ನು ಸೇರಿಸುತ್ತದೆ

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

ಇದು ಅದೇ ದಿಕ್ಕಿನ ಲಕ್ಷಣವನ್ನು ಉತ್ಪಾದಿಸುವ ಎರಡನೇ ಮತ್ತು ಸ್ವತಂತ್ರ ಕಾರ್ಯವಿಧಾನ. ಎಂಡ್‌ಪಾಯಿಂಟ್ ಜ್ಞಾನ ಮತ್ತು ಅನುವಾದ ಸ್ಥಿತಿ ಎರಡೂ ಸರಿಯಾಗಿರಬೇಕು, ಮತ್ತು ಒಂದನ್ನು ಸರಿಪಡಿಸುವುದು ಇನ್ನೊಂದನ್ನು ಸರಿಪಡಿಸುವುದಿಲ್ಲ.

ನಿಜವಾಗಿ ನಿಮಗೆ ಬೇಕಾದ ದಿಕ್ಕನ್ನು ಕಾನ್ಫಿಗರ್ ಮಾಡಿ

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

ಅನುವಾದದ ಹಿಂದೆ ಇರುವ ಮತ್ತು ತಲುಪಬಲ್ಲದಾಗಿ ಉಳಿಯಬೇಕಾದ ಪಿಯರ್‌ಗೆ, ಆ ಬದಿಯಲ್ಲಿ ನಿರಂತರ keepalive ಸಕ್ರಿಯಗೊಳಿಸಿ. ಪ್ರತಿ 25 ಸೆಕೆಂಡುಗಳಿಗೊಮ್ಮೆ keepalive ಸಾಮಾನ್ಯ ಪ್ರಾರಂಭಿಕ ಮೌಲ್ಯ, ಮತ್ತು ಅದರ ಉದ್ದೇಶ ಸುರಂಗವನ್ನು ಪರೀಕ್ಷಿಸುವುದಲ್ಲ, ಮ್ಯಾಪಿಂಗ್ ತೆರೆದಿಡುವುದು. ಅದನ್ನು ಹೊತ್ತೊಯ್ಯಲು ಒಂದು ಬದಿಯನ್ನು ಆಯ್ಕೆಮಾಡಿ, ಏಕೆಂದರೆ ಎರಡೂ ಬದಿಗಳಲ್ಲಿ ಸಕ್ರಿಯಗೊಳಿಸಿದರೆ ಫಲಿತಾಂಶ ಸುಧಾರಿಸದೆ ಸಂಚಾರ ಮತ್ತು ಲಾಗ್ ಗದ್ದಲ ದ್ವಿಗುಣವಾಗುತ್ತದೆ.

ಟ್ರಿಗರ್‌ನ ಮೊದಲು ಮತ್ತು ನಂತರ ಸ್ಥಿತಿಯನ್ನು ಹೋಲಿಸಿ

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

wg show
conntrack -L -p udp 2>/dev/null | grep 51820
tcpdump -ni any -c 20 'udp port 51820'
ip route get 198.51.100.7

ಎಂಡ್‌ಪಾಯಿಂಟ್ ಕಾಲಮ್ ಮತ್ತು ಅನುವಾದ ನಮೂದನ್ನು ಒಟ್ಟಿಗೆ ದಾಖಲಿಸಿ. ಎಂಡ್‌ಪಾಯಿಂಟ್ ಇಲ್ಲದ ಪಿಯರ್ ಮತ್ತು ಮ್ಯಾಪಿಂಗ್ ಇಲ್ಲದ ಗೇಟ್‌ವೇ ಎರಡು ವಿಭಿನ್ನ ದೋಷಗಳು. ಅವುಗಳಲ್ಲಿ ಒಂದನ್ನು ಮಾತ್ರ keepalive ಸರಿಪಡಿಸುತ್ತದೆ.

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