WireGuard ನಿಲ್ಲುತ್ತದೆ: MTU ಮಿತಿಯೋ ಅಥವಾ ಕಾಣೆಯಾದ ಫಾರ್ವರ್ಡ್ ನಿಯಮವೋ?
ಸರ್ವರ್ ಆಚೆ ಏನೂ ಕೆಲಸ ಮಾಡದಿದ್ದರೆ ಅದು ಫಾರ್ವರ್ಡಿಂಗ್ ಅಥವಾ ಹಿಂತಿರುಗುವ ಮಾರ್ಗದ ಸಮಸ್ಯೆ. ಸಣ್ಣ ವಿನಂತಿಗಳು ನಡೆದು ದೊಡ್ಡವು ನಿಲ್ಲುವುದು ಪ್ಯಾಕೆಟ್ ಗಾತ್ರದ ಲಕ್ಷಣ.
WireGuard ತಪ್ಪಾಗಿ ವರ್ತಿಸಿದಾಗಲೇ MTU ಕಡಿಮೆ ಮಾಡುವುದು ಅಭ್ಯಾಸ, ಮತ್ತು ಆ ಅಭ್ಯಾಸ ಬೇರೊಂದು ದೋಷವನ್ನು ಮುಚ್ಚಿಡುತ್ತದೆ. ಫಾರ್ವರ್ಡ್ ಮಾಡದ ಗೇಟ್ವೇ ಮತ್ತು ದೊಡ್ಡ ಪ್ಯಾಕೆಟ್ಗಳನ್ನು ಹೊತ್ತುಕೊಳ್ಳದ ಮಾರ್ಗ ಬೇರ್ಪಡಿಸಬಹುದಾದ ಮಾದರಿಗಳನ್ನು ಉಂಟುಮಾಡುತ್ತವೆ: ಒಂದು ಎರಡೂ ದಿಕ್ಕುಗಳಲ್ಲಿ ಮತ್ತು ಪ್ರತಿ ಗಾತ್ರದಲ್ಲೂ ವಿಫಲವಾಗುತ್ತದೆ, ಇನ್ನೊಂದು ಸಣ್ಣ ವಿನಂತಿಗಳಲ್ಲಿ ಉಳಿಯುತ್ತದೆ ಮತ್ತು ದೊಡ್ಡವುಗಳಲ್ಲಿ ಸಾಯುತ್ತದೆ. ಯಾವುದೇ ಸಂಖ್ಯೆಯನ್ನು ಬದಲಿಸುವ ಮೊದಲು ನಿಮ್ಮಲ್ಲಿ ಯಾವ ಆಕಾರವಿದೆ ಎಂಬುದನ್ನು ನಿರ್ಧರಿಸಿ. ಪರೀಕ್ಷೆ ಅಗ್ಗವಾಗಿದೆ ಮತ್ತು ಸಂಭಾವ್ಯ ಕಾರಣಗಳ ಅರ್ಧವನ್ನು ತೆಗೆದುಹಾಕುತ್ತದೆ.
ಎರಡು ವೈಫಲ್ಯಗಳು, ಎರಡು ವಿಭಿನ್ನ ಆಕಾರಗಳು
ಫಾರ್ವರ್ಡಿಂಗ್ ಸಮಸ್ಯೆ ಸರ್ವರ್ನ ನಂತರ ತಕ್ಷಣ ಕಾಣಿಸಿಕೊಳ್ಳುತ್ತದೆ. ಹ್ಯಾಂಡ್ಶೇಕ್ ಯಶಸ್ವಿಯಾಗುತ್ತದೆ, ಟನೆಲ್ ವಿಳಾಸ ಉತ್ತರಿಸುತ್ತದೆ, ಮತ್ತು ಗೇಟ್ವೇ ಹಿಂದೆ ಸಣ್ಣ ವಿನಂತಿಯಿಂದಲೂ ಏನೂ ತಲುಪುವುದಿಲ್ಲ. ಪ್ಯಾಕೆಟ್ ಸರ್ವರ್ಗೆ ತಲುಪಿ ಮುಂದೆ ಕಳುಹಿಸಲಿಲ್ಲ, ಅಥವಾ ಉತ್ತರಕ್ಕೆ ಹಿಂತಿರುಗುವ ಮಾರ್ಗವಿರಲಿಲ್ಲ.
ಗಾತ್ರದ ಸಮಸ್ಯೆ ಒಂದು ಮಿತಿಯ ಮೇಲೆ ಮಾತ್ರ ಕಾಣಿಸಿಕೊಳ್ಳುತ್ತದೆ. DNS, TCP ಹ್ಯಾಂಡ್ಶೇಕ್ ಮತ್ತು ಸಣ್ಣ API ಕರೆ ಕೆಲಸ ಮಾಡುತ್ತವೆ, ಆದರೆ ಫೈಲ್ ಡೌನ್ಲೋಡ್ ಅಥವಾ ದೊಡ್ಡ ಉತ್ತರ ನೇತಾಡುತ್ತದೆ. ಹೊಂದಿಕೊಂಡ ಪ್ಯಾಕೆಟ್ಗಳು ಒಂದು ತುದಿಯಿಂದ ಇನ್ನೊಂದಕ್ಕೆ ಹೋದವು, ಮತ್ತು ಹೊಂದಿಕೊಳ್ಳದವು ಎಲ್ಲೋ ಉಪಯುಕ್ತ ವರದಿ ಇಲ್ಲದೆ ಬಿಸಾಡಲ್ಪಟ್ಟವು.
ಆ ವಿವರಣೆಗಳು ವಿಭಿನ್ನ ಜನರು ಮತ್ತು ವಿಭಿನ್ನ ಸಂರಚನಾ ಫೈಲ್ಗಳನ್ನು ಸೂಚಿಸುತ್ತವೆ, ಆದ್ದರಿಂದ ಊಹೆಗಿಂತ ಆಕಾರವನ್ನು ಅಳೆಯುವುದು ಹೆಚ್ಚು ಮೌಲ್ಯದ್ದು. ಗೇಟ್ವೇಗೆ ಒಂದೇ ಪಿಂಗ್ ಅವುಗಳನ್ನು ಬೇರ್ಪಡಿಸಲಾರದು.
ಏನನ್ನಾದರೂ ಚಿಕ್ಕದಾಗಿಸುವ ಮೊದಲು ಫಾರ್ವರ್ಡಿಂಗ್ ತೆಗೆದುಹಾಕಿ
ಗೇಟ್ವೇಯನ್ನೇ ಅಲ್ಲ, ಗೇಟ್ವೇ ಆಚೆಯ ಗಮ್ಯಸ್ಥಾನವನ್ನು ಪರೀಕ್ಷಿಸಿ. ಸರ್ವರ್ನ ಟನೆಲ್ ವಿಳಾಸಕ್ಕೆ ಪಿಂಗ್ ಮಾಡುವುದು ಇಂಟರ್ಫೇಸ್ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತಿದೆ ಮತ್ತು ಟನೆಲ್ ಮುಗಿಸುವ ಯಂತ್ರವನ್ನು ತಲುಪುತ್ತೀರಿ ಎಂಬುದನ್ನು ಮಾತ್ರ ಸಾಬೀತುಪಡಿಸುತ್ತದೆ. ವಿಶಾಲ ನೆಟ್ವರ್ಕ್ನ ಸಂಚಾರವು ಆ ಯಂತ್ರದಲ್ಲಿ IP ಫಾರ್ವರ್ಡಿಂಗ್ ಸಕ್ರಿಯವಾಗಿರುವುದು ಮತ್ತು ಫಾರ್ವರ್ಡ್ ಆದ ಹರಿವಿಗೆ ಅನುಮತಿ ನೀಡುವ ಫೈರ್ವಾಲ್ ಮೇಲೆ ಅವಲಂಬಿತವಾಗಿದೆ. ಎರಡೂ ನಿಜವಾಗಿರಬೇಕು, ಮತ್ತು ಒಂದು ಸುಳ್ಳಾಗಿದ್ದರೆ ಅದೇ ಮೌನ ಉಂಟಾಗುತ್ತದೆ.
ಹಿಂತಿರುಗುವ ಮಾರ್ಗನಿರ್ದೇಶನವೂ ಅಷ್ಟೇ ಮುಖ್ಯ. ಗಮ್ಯ ನೆಟ್ವರ್ಕ್ಗೆ ಕ್ಲೈಂಟ್ನ ಟನೆಲ್ ವಿಳಾಸವನ್ನು ತಲುಪುವ ಬಗೆ ತಿಳಿಯದಿದ್ದರೆ, ವಿನಂತಿ ಬರುತ್ತದೆ ಮತ್ತು ಉತ್ತರ ಮಾಯವಾಗುತ್ತದೆ, ಮತ್ತು ಕ್ಲೈಂಟ್ ಬಿಸಾಡಿದ ಫಾರ್ವರ್ಡ್ನಂತೆಯೇ ಕಾಣುವ ಸಮಯ ಮೀರುವಿಕೆಯನ್ನು ವರದಿ ಮಾಡುತ್ತದೆ.
ವಿನ್ಯಾಸವು ವಿಳಾಸ ಅನುವಾದವನ್ನು ಬಳಸುವಲ್ಲಿ, ಅನುವಾದ ನಿಯಮ ಆ ಹಿಂತಿರುಗುವ ಮಾರ್ಗದ ಭಾಗವಾಗಿದೆ. MTU ಸಮಸ್ಯೆಯನ್ನು ಬೆನ್ನಟ್ಟುವಾಗ ಅದನ್ನು ತೆಗೆದುಹಾಕುವುದು ಕೆಲಸ ಮಾಡುತ್ತಿದ್ದ ವಿನ್ಯಾಸವನ್ನು ಮುರಿದದ್ದಾಗಿಸುತ್ತದೆ, ಆದ್ದರಿಂದ ಸಂಪಾದಿಸುವ ಮೊದಲು ಇರುವ ನಿಯಮಗಳನ್ನು ಓದಿ.
ಮುರಿತ ಎಲ್ಲಿಂದ ಪ್ರಾರಂಭವಾಗುತ್ತದೆ ಎಂದು ಅಳೆಯಿರಿ
ಮೊದಲು ಫಾರ್ವರ್ಡಿಂಗ್ ಸ್ಥಿತಿ ಮತ್ತು ಫಿಲ್ಟರ್ ನಿಯಮಗಳನ್ನು ಓದಿ. ಇವು ಓದಲು ಮಾತ್ರದ ಪರಿಶೀಲನೆಗಳು ಮತ್ತು ಅಗ್ಗದ ಪ್ರಶ್ನೆಗೆ ಉತ್ತರಿಸುತ್ತವೆ:
sysctl net.ipv4.ip_forward
sudo iptables -S FORWARD
ip route get 10.30.0.9
ನಂತರ ಕ್ಲೈಂಟ್ನಿಂದ ಗೇಟ್ವೇ ಆಚೆಯ ಹೋಸ್ಟ್ನ ಕಡೆಗೆ, don’t-fragment ಬಿಟ್ನೊಂದಿಗೆ ಗಾತ್ರಗಳನ್ನು ಪರೀಕ್ಷಿಸಿ:
ping -M do -s 1200 10.30.0.9
ping -M do -s 1400 10.30.0.9
ಮೊದಲ ಪರಿಶೀಲನೆ ಕೆಲಸ ಮಾಡಿ ಎರಡನೆಯದು ಛಿದ್ರೀಕರಣ ದೋಷದೊಂದಿಗೆ ವಿಫಲವಾದರೆ, ಮಾರ್ಗವು ತನ್ನ ಬಳಸಬಹುದಾದ ಗಾತ್ರವನ್ನು ಹೇಳುತ್ತಿದೆ. ಎರಡೂ ಕೆಲಸ ಮಾಡದಿದ್ದರೆ, ನೀವು ಫಾರ್ವರ್ಡಿಂಗ್ ಅಥವಾ ಮಾರ್ಗನಿರ್ದೇಶನವನ್ನು ನೋಡುತ್ತಿದ್ದೀರಿ, ಮತ್ತು MTU ಬದಲಾಯಿಸಬೇಕಾದ ಚರವಲ್ಲ.
| Observation | Points toward | Where to look |
|---|---|---|
| Nothing beyond the gateway works | Forwarding or return route | Forwarding flag, filter rules, routing table |
| Small works, large stalls | Packet size on the path | Tunnel MTU and the link underneath |
| Only names fail | DNS resolution | The resolver configured for the tunnel |
| Works sometimes | Multiple paths or state expiry | Flow selection and NAT state |
ನೀವು ಸಾಬೀತುಪಡಿಸಿದ ಪದರವನ್ನು ಸರಿಪಡಿಸಿ
ಫಾರ್ವರ್ಡಿಂಗ್ ದೋಷವಾದಾಗ, ಸರಿಪಡಿಸುವಿಕೆ ಫಾರ್ವರ್ಡಿಂಗ್ ನಿಯಮ ಅಥವಾ ಮಾರ್ಗ, ವಿನ್ಯಾಸ ಅನುಮತಿಸುವಷ್ಟು ಸಂಕುಚಿತವಾಗಿ ವ್ಯಕ್ತಪಡಿಸಲಾಗುತ್ತದೆ. ಗಾತ್ರ ದೋಷವಾದಾಗ, ಸರಿಪಡಿಸುವಿಕೆ ಈ ನಿರ್ದಿಷ್ಟ ಮಾರ್ಗದ ಎನ್ಕ್ಯಾಪ್ಸುಲೇಶನ್ ಅನ್ನು ಗಣನೆಗೆ ತೆಗೆದುಕೊಳ್ಳುವ MTU, ಅದು ಅಗತ್ಯವಿರುವ ಇಂಟರ್ಫೇಸ್ಗೆ ಅನ್ವಯಿಸುತ್ತದೆ, ನೌಕೆಯ ಪ್ರತಿ ಅಡಾಪ್ಟರ್ಗೆ ಅಲ್ಲ.
ಹೇಗಾದರೂ, ನಂತರ ಅದೇ ಗಮ್ಯಸ್ಥಾನಕ್ಕೆ ಅದೇ ಕಾರ್ಯವನ್ನು ಪುನರಾವರ್ತಿಸಿ. ಮೂಲ ದೊಡ್ಡ ವರ್ಗಾವಣೆ ಈಗ ಪೂರ್ಣಗೊಂಡರೆ, ಬದಲಾವಣೆ ವಿಫಲವಾಗುತ್ತಿದ್ದ ಪದರವನ್ನು ಸಂಬೋಧಿಸಿದೆ. ಸಣ್ಣ ಪರಿಶೀಲನೆ ಮಾತ್ರ ಸುಧಾರಿಸಿದರೆ, ನೀವು ಲಕ್ಷಣಕ್ಕೆ ಚಿಕಿತ್ಸೆ ನೀಡಿದ್ದೀರಿ ಮತ್ತು ನಿಜವಾದ ಮಿತಿ ಇನ್ನೂ ಇದೆ.
ಬದಲಾವಣೆಗೆ ಮೊದಲು ನೀವು ಯಾವ ಆಕಾರವನ್ನು ಗಮನಿಸಿದಿರಿ ಎಂದು ಬರೆಯಿರಿ. ಸರಿಪಡಿಸುವಿಕೆಯ ಪಕ್ಕದಲ್ಲಿ ದಾಖಲಾದ ಆ ಒಂದೇ ಸಾಲು, ಎಂದಿಗೂ ಸಮಸ್ಯೆಯಾಗದ MTU ಅನ್ನು ಕಡಿಮೆ ಮಾಡದಂತೆ ಮುಂದಿನ ವ್ಯಕ್ತಿಯನ್ನು ತಡೆಯುತ್ತದೆ.