VPN ಸಂಪರ್ಕಗೊಂಡಾಗ Vagrant VM ಮಾಯವಾಗುತ್ತದೆ: ಮುರಿದ ರೂಟ್ ಯಾರದು
ಒಂದು ನಿಮಿಷದ ಹಿಂದೆ ಉತ್ತರಿಸಿದ ಯಂತ್ರ ಸಂಪರ್ಕದ ಕ್ಷಣದಲ್ಲಿ ಮಾಯವಾಗುತ್ತದೆ. ಏನನ್ನೂ ಬದಲಿಸುವ ಮೊದಲು ಮುರಿದ ರೂಟ್ ಯಾರದು ಎಂದು ನಿರ್ಧರಿಸಿ.
ಯಂತ್ರ ಒಂದು ನಿಮಿಷದ ಹಿಂದೆ ಉತ್ತರಿಸುತ್ತಿತ್ತು, VPN ಸಂಪರ್ಕಗೊಂಡಿತು, ಮತ್ತು ಈಗ ಅದೇ ವಿಳಾಸ ಸಮಯ ಮೀರಿಸುತ್ತದೆ. ಮೂರು ದೋಷಗಳು ಈ ಲಕ್ಷಣವನ್ನು ಉಂಟುಮಾಡುತ್ತವೆ, ಮತ್ತು ಅವು ಬೇರೆ ಬೇರೆ ಯಂತ್ರಗಳಲ್ಲಿ ವಾಸಿಸುತ್ತವೆ. ಹೋಸ್ಟ್ ಖಾಸಗಿ ಜಾಲಕ್ಕೆ ಇರುವ ರೂಟ್ ಕಳೆದುಕೊಳ್ಳಬಹುದು, ಅತಿಥಿಯ NAT ಶ್ರೇಣಿ ಈಗ ಸುರಂಗ ಘೋಷಿಸುವ ಶ್ರೇಣಿಯೊಂದಿಗೆ ಘರ್ಷಿಸಬಹುದು, ಅಥವಾ ಪೂರ್ಣ ಸುರಂಗ ಹೋಸ್ಟ್ನ ಪ್ರತಿ ರೂಟ್ನ ಮಾಲೀಕತ್ವವನ್ನು ತೆಗೆದುಕೊಳ್ಳಬಹುದು. ಯಾವುದೇ ಸಂರಚನೆ ಬದಲಿಸುವ ಮೊದಲು ಯಾವುದು ಸಂಭವಿಸಿದೆ ಎಂದು ಕಂಡುಹಿಡಿಯಿರಿ, ಏಕೆಂದರೆ ಪ್ರತಿ ಸರಿಪಡಿಸುವಿಕೆ ಬೇರೆ ಕಡೆ ವಾಸಿಸುತ್ತದೆ.
ರೂಟ್ ನೋಡಿ, ಯಂತ್ರವನ್ನಲ್ಲ
ಸುರಂಗ ಮೇಲಿರುವಾಗ ಅತಿಥಿ ವಿಳಾಸಕ್ಕಾಗಿ ಹೋಸ್ಟ್ನ ರೂಟಿಂಗ್ ನಿರ್ಧಾರ ನೋಡಿ. ಇನ್ನೂ ಹೋಸ್ಟ್-ಮಾತ್ರ ಅಡಾಪ್ಟರ್ಗೆ ತೋರಿಸುವ ರೂಟ್ ಸಮಸ್ಯೆ ಅಲ್ಲ. ಈಗ VPN ಅಡಾಪ್ಟರ್ಗೆ ತೋರಿಸುವ ರೂಟ್ ಸಮಸ್ಯೆ, ಮತ್ತು ಅದನ್ನು ನೀವಲ್ಲ, ಕ್ಲೈಂಟ್ ಬದಲಿಸಿದೆ. ಅಡಾಪ್ಟರ್ ತನ್ನ ವಿಳಾಸ ಉಳಿಸಿಕೊಳ್ಳುವುದು ಇಂಟರ್ಫೇಸ್ ಉಳಿದಿದೆ ಎಂದು ಹೇಳುತ್ತದೆ, ಇದು ಮಾರ್ಗ ಉಳಿದಿದೆ ಎಂಬುದಕ್ಕಿಂತ ಬೇರೆ ಸಂಗತಿ.
ಸಂಪರ್ಕದ ನಿಖರ ಕ್ಷಣದಲ್ಲಿ ಬೀಳುವ SSH ಅಧಿವೇಶನ ನಿರೀಕ್ಷಿತ ವರ್ತನೆ. ಕ್ಲೈಂಟ್ ಅಡಾಪ್ಟರ್ಗಳನ್ನು ಮರುಬಳಕೆ ಮಾಡಿ ರೂಟ್ಗಳನ್ನು ಸ್ಥಾಪಿಸುತ್ತದೆ, ಆದ್ದರಿಂದ ಸಂಪರ್ಕ ಕೆಲವು ಸೆಕೆಂಡುಗಳ ಕಾಲ ಸಾಯುತ್ತದೆ. ದೋಷ ಎಂದರೆ ಎಂದಿಗೂ ಹಿಂತಿರುಗದ ಸಂಪರ್ಕ, ಕ್ಷಣ ಮಿಂಚಿದ ಸಂಪರ್ಕವಲ್ಲ.
ಸುರಂಗದ ಮೊದಲು ಕೋಷ್ಟಕವನ್ನು ಹಿಡಿಯಿರಿ ಮತ್ತು ನಂತರ ಮತ್ತೊಮ್ಮೆ, ನಂತರ ಆ ಎರಡು ಔಟ್ಪುಟ್ಗಳನ್ನು ಹೋಲಿಸಿ. ವ್ಯತ್ಯಾಸವೇ ನಿರ್ಣಯ, ಮತ್ತು ಅದೇ ಜಾಲದ ಮಾಲೀಕ ಕೇಳುವ ಸಾಕ್ಷ್ಯ.
ip -4 route get 192.168.56.10
ip -brief addr show
ip route show table main | head -20ಸಂಪರ್ಕದ ಮೊದಲು ಮತ್ತು ನಂತರ ಹೋಸ್ಟ್ನ ಕೋಷ್ಟಕ ಓದಿ
ಲಿನಕ್ಸ್ನಲ್ಲಿ ಅತಿಕ್ರಮಿಸುವ ರೂಟ್ಗಳ ನಡುವಿನ ಆದ್ಯತೆ ಪ್ರಿಫಿಕ್ಸ್ ಉದ್ದ ಮತ್ತು ಮೆಟ್ರಿಕ್ನಿಂದ ಬರುತ್ತದೆ, ಆದ್ದರಿಂದ ಹೆಚ್ಚು ನಿರ್ದಿಷ್ಟ VPN ರೂಟ್ ತಪ್ಪಾಗಿದ್ದರೂ ಗೆಲ್ಲುತ್ತದೆ. ವಿಂಡೋಸ್ನಲ್ಲಿ ಇಂಟರ್ಫೇಸ್ ಮೆಟ್ರಿಕ್ ಸಮಬಲವನ್ನು ನಿರ್ಧರಿಸುತ್ತದೆ, ಮತ್ತು ಸುರಂಗದ ಅಡಾಪ್ಟರ್ ಸಾಮಾನ್ಯವಾಗಿ ವರ್ಚುವಲ್ಗಿಂತ ಕಡಿಮೆ ಮೆಟ್ರಿಕ್ನೊಂದಿಗೆ ಬರುತ್ತದೆ. ಎರಡೂ ಸಂದರ್ಭಗಳಲ್ಲಿ ಕಾಣುವ ಲಕ್ಷಣ ಒಂದೇ: ಪ್ಯಾಕೆಟ್ಗಳು ಸುರಂಗದ ಅಡಾಪ್ಟರ್ ಮೂಲಕ ಹೊರಟು ಮಾಯವಾಗುತ್ತವೆ.
ಅತಿಥಿ ಪ್ರಿಫಿಕ್ಸ್ನ ರೂಟ್ ಪಕ್ಕದಲ್ಲಿ ಅಡಾಪ್ಟರ್ಗಳನ್ನು ಮತ್ತು ಅವುಗಳ ಮೆಟ್ರಿಕ್ಗಳನ್ನು ಮುದ್ರಿಸಿ. ಆ ಔಟ್ಪುಟ್ ಜೋಡಿ ಮಾಲೀಕತ್ವದ ಪ್ರಶ್ನೆಗೆ ಒಂದೇ ನೋಟದಲ್ಲಿ ಉತ್ತರಿಸುತ್ತದೆ.
Get-NetAdapter | Select-Object Name, InterfaceIndex, InterfaceMetric
Get-NetRoute -DestinationPrefix 192.168.56.0/24
route print -4 | Select-String '192.168.56'ರೂಟ್ ಬದಲಾದರೆ ಅಡಾಪ್ಟರ್ ಮೆಟ್ರಿಕ್ ಬದಲಾಗದಿದ್ದರೆ, ಕ್ಲೈಂಟ್ ಸ್ಪರ್ಧಾತ್ಮಕ ರೂಟ್ ಸ್ಥಾಪಿಸಿದೆ. ಮೆಟ್ರಿಕ್ ಬದಲಾದರೆ, ಕ್ಲೈಂಟ್ ಅಡಾಪ್ಟರ್ಗಳನ್ನು ಮರುಜೋಡಿಸಿದೆ. ಎರಡನ್ನೂ ಸರಿಪಡಿಸಬಹುದು, ಮತ್ತು ಅವು ಬೇರೆ ಬೇರೆ ಕಡೆ ಸರಿಪಡಿಸಲ್ಪಡುತ್ತವೆ.
ಅತಿಥಿಯ NAT ಶ್ರೇಣಿಯೇ ಘರ್ಷಣೆಯಾದಾಗ
VirtualBox NAT ಡೀಫಾಲ್ಟ್ ಆಗಿ 10.0.2.0/24 ಬಳಸುತ್ತದೆ, ಮತ್ತು ಅದೇ ಶ್ರೇಣಿಯನ್ನು ತಳ್ಳುವ ಸುರಂಗ ಅತಿಥಿಯನ್ನು ಆ ಸಂಚಾರವನ್ನು ನಿಜವಾದ ಗಮ್ಯಸ್ಥಾನಕ್ಕೆ ಬದಲಾಗಿ ತನ್ನ NAT ಗೇಟ್ವೇಗೆ ಕಳುಹಿಸುವಂತೆ ಮಾಡುತ್ತದೆ. ಪ್ಯಾಕೆಟ್ ಎಂದಿಗೂ ಹೋಸ್ಟ್ ಬಿಡುವುದಿಲ್ಲ, ಆದ್ದರಿಂದ ಆಚೆ ಬದಿಯ ಯಾವುದೇ ಫೈರ್ವಾಲ್ ಲಾಗ್ ಅದನ್ನು ತೋರಿಸುವುದಿಲ್ಲ. Docker Machine ತನ್ನ ಹೋಸ್ಟ್-ಮಾತ್ರ ಯೋಜನೆಯಲ್ಲಿ ಅದೇ ವರ್ಗದ ಘರ್ಷಣೆ ಹೊಂದಿದೆ, ಮತ್ತು ಆ ಯೋಜನೆ ಬದಲಿಸಲು ಯಂತ್ರವನ್ನು ಅದರ ಪ್ರಮಾಣಪತ್ರಗಳೊಂದಿಗೆ ಮರುಸೃಷ್ಟಿಸಬೇಕಾಗಬಹುದು.
ಸುರಂಗ ಈಗಾಗಲೇ ಘೋಷಿಸುವುದು, ನಂತರ ಕಚೇರಿ ಜಾಲ ಬಳಸುವುದು, ನಂತರ ಈ ಹೋಸ್ಟ್ನ ಪ್ರತಿ ವರ್ಚುವಲ್ ಅಡಾಪ್ಟರ್ ಕ್ಲೇಮ್ ಮಾಡಿದ್ದನ್ನು ಪಟ್ಟಿ ಮಾಡಿ ಬದಲಿಯನ್ನು ಆರಿಸಿ. ರೂಟಿಂಗ್ ಮುರಿಯುವುದು ಅತಿಕ್ರಮಣ, ಮತ್ತು ಹೋಲಿಕೆ ಅಪ್ರಸ್ತುತ. ಒಂದು ಶ್ರೇಣಿ ಇನ್ನೊಂದರ ಒಳಗೆ ಸಂಪೂರ್ಣವಾಗಿ ಇರಬಹುದು, ಆದರೆ ಮೊದಲ ನೋಟದಲ್ಲಿ ಸ್ವಲ್ಪವೂ ಹೋಲುವುದಿಲ್ಲ.
ಯಂತ್ರ ರಚಿಸುವಾಗ ಹೊಸ ಶ್ರೇಣಿ ಹೊಂದಿಸಿ, ಅಥವಾ ಅದನ್ನು ಬದಲಿಸಿ ಮತ್ತೆ ಲೋಡ್ ಮಾಡಿ, ನಂತರ ಅತಿಥಿಯಿಂದ ವಿಫಲ ಸಂಪರ್ಕವನ್ನು ಮತ್ತೆ ಪರೀಕ್ಷಿಸಿ. ಅತಿಥಿಯ ಸ್ವಂತ ಕೋಷ್ಟಕವೇ ಮುಖ್ಯವಾದ ನೋಟ.
VBoxManage modifyvm devbox --natnet1 10.77.0.0/24
vagrant reload devbox --provision
vagrant ssh devbox -c 'ip route get 10.20.0.15'ಕ್ಲೈಂಟ್ ಜೊತೆ ಹೋರಾಡದೆ ಮಾರ್ಗವನ್ನು ಮರುಸ್ಥಾಪಿಸಿ
ಪ್ರತಿ ಪ್ಲಾಟ್ಫಾರ್ಮ್ ಹೋಸ್ಟ್-ಮಾತ್ರ ಪ್ರಿಫಿಕ್ಸ್ ಮತ್ತೆ ಮುಂದೆ ತರುವ ದಾರಿ ನೀಡುತ್ತದೆ. macOS ನಲ್ಲಿ ಹೋಸ್ಟ್-ಮಾತ್ರ ಇಂಟರ್ಫೇಸ್ಗೆ ಸ್ಥಿರ ರೂಟ್ ಮುಂದಿನ ಸಂಪರ್ಕದವರೆಗೆ ಕೆಲಸ ಮಾಡುತ್ತದೆ. ವಿಂಡೋಸ್ನಲ್ಲಿ ವರ್ಚುವಲ್ ಅಡಾಪ್ಟರ್ನಲ್ಲಿ ಕಡಿಮೆ ಇಂಟರ್ಫೇಸ್ ಮೆಟ್ರಿಕ್ ಅದನ್ನು ಆದ್ಯತೆಯಲ್ಲಿ ಇಡುತ್ತದೆ. ಲಿನಕ್ಸ್ನಲ್ಲಿ ಬದಲಿ ಕಾರ್ಯಾಚರಣೆ ಒಂದೇ ಪ್ರಿಫಿಕ್ಸ್ ಆವರಿಸುತ್ತದೆ. ಮೂರೂ ಪರಿಹಾರಗಳು, ಏಕೆಂದರೆ ತನ್ನ ರೂಟ್ಗಳನ್ನು ಮತ್ತೆ ವಾದಿಸುವ ಕ್ಲೈಂಟ್ ಅವನ್ನು ರದ್ದುಗೊಳಿಸುತ್ತದೆ.
ಬೂಟ್ನಲ್ಲಿ ಕುರುಡು ಮರುಸಂಪರ್ಕದ ಬದಲು ಪರಿಶೀಲನೆಯನ್ನು ಸ್ಕ್ರಿಪ್ಟ್ ಮಾಡಿ. ಪ್ರತಿ ಸಂಪರ್ಕದ ನಂತರ ಅತಿಥಿ ಪ್ರಿಫಿಕ್ಸ್ನ ರೂಟ್ ಮುದ್ರಿಸುವ ಸಣ್ಣ ಸ್ಕ್ರಿಪ್ಟ್ ಒಗಟನ್ನು ಲಾಗ್ನ ಸಾಲಾಗಿ ಬದಲಿಸುತ್ತದೆ.
ಪ್ರೊಫೈಲ್ ಪೂರ್ಣ ಸುರಂಗವಾದರೆ, ಜಾಲದ ಮಾಲೀಕರನ್ನು ವಿಭಜಿತ ಸುರಂಗ ಅಥವಾ ದಾಖಲಿತ ವಿನಾಯಿತಿ ಕೇಳಿ. ಭದ್ರತಾ ನೀತಿಯನ್ನು ಬಳಸಿಕೊಳ್ಳದ ರೂಟ್ಗಳನ್ನು ಸದ್ದಿಲ್ಲದೆ ಸೇರಿಸುವುದು ಸರಿಪಡಿಸುವಿಕೆ ಅಲ್ಲ, ಅದು ನಂತರ ಆಡಿಟರ್ ಜೊತೆ ಬರುವ ಎರಡನೇ ಸಮಸ್ಯೆ.
ಸರಿಪಡಿಸುವಿಕೆಯನ್ನು ಎರಡೂ ಬದಿಗಳಲ್ಲಿ ಪರಿಶೀಲಿಸಿ
ಬದಲಾವಣೆಯ ನಂತರ ಮೂರು ಮಾರ್ಗಗಳನ್ನು ಪರಿಶೀಲಿಸಿ: ಹೋಸ್ಟ್ನಿಂದ ಅತಿಥಿಗೆ, ಅತಿಥಿಯಿಂದ ಕಾರ್ಪೊರೇಟ್ ಹೋಸ್ಟ್ಗೆ, ಮತ್ತು ಅತಿಥಿಯಿಂದ ಇಂಟರ್ನೆಟ್ಗೆ. ಒಂದನ್ನು ಮರುಸ್ಥಾಪಿಸಿ ಇನ್ನೊಂದನ್ನು ಮುರಿಯುವ ಸರಿಪಡಿಸುವಿಕೆ ದುರಸ್ತಿಯ ವೇಷದಲ್ಲಿ ಸಂರಚನೆ ಬದಲಾವಣೆ. ಹೋಲಿಕೆ ಸಮಾನವಾಗಿರಲು ಬದಲಾವಣೆಗೆ ಮೊದಲು ಸಂಗ್ರಹಿಸಿದ ಅದೇ ಔಟ್ಪುಟ್ಗಳನ್ನು ಹಿಡಿಯಿರಿ.
ಬದಲಾದ ಇಂಟರ್ಫೇಸ್, ಮೆಟ್ರಿಕ್ ಮತ್ತು ರೂಟ್ ಅನ್ನು ಸಮಯದೊಂದಿಗೆ ದಾಖಲಿಸಿ, ಮುಂದಿನ ಸಂಭವ ಮರುನಿರ್ಮಾಣವಲ್ಲ, ಹುಡುಕಾಟವಾಗಲಿ. ಆ ಟಿಪ್ಪಣಿ ಉದ್ದದ ಟಿಕೆಟ್ ಎಳೆಗಿಂತ ಹೆಚ್ಚು ಮೌಲ್ಯದ್ದು.
ip -4 route get 192.168.56.10
traceroute -n -m 4 10.20.0.15
curl -sS -o /dev/null -w '%{http_code}\n' https://example.comಹೋಸ್ಟ್ ಮತ್ತೆ ಅತಿಥಿಯನ್ನು ತಲುಪಿ ಅತಿಥಿ LAN ತಲುಪಿದಾಗ, ನೀವು ಪ್ರಾರಂಭಿಸಿದ ಮಾರ್ಗವನ್ನು ಮರುಸ್ಥಾಪಿಸಿದ್ದೀರಿ. ಅವುಗಳಲ್ಲಿ ಒಂದೇ ಕೆಲಸ ಮಾಡಿದರೆ, ಉಳಿದ ದೋಷ ಇನ್ನೊಬ್ಬ ಮಾಲೀಕರ ಪ್ರದೇಶದಲ್ಲಿದೆ, ಮತ್ತು ವ್ಯತ್ಯಾಸ ಯಾವ ಪ್ರದೇಶ ಎಂದು ಹೇಳುತ್ತದೆ.