Kerio ಸುರಂಗ ಸಂಚಾರವನ್ನು ಸಾಗಿಸುವ ಮೊದಲು ಮೂರು ವಿಷಯಗಳು ಒಂದಾಗಿರಬೇಕು: kvnet ಇಂಟರ್ಫೇಸ್‌ನಲ್ಲಿನ ವಿಳಾಸ, ಕ್ಲೈಂಟ್ ದಾಖಲಿಸಿದ ಮೌಲ್ಯ, ಮತ್ತು ಸರ್ವರ್ ನೀತಿ ಅಥವಾ DHCP ನಿರೀಕ್ಷಿಸುವುದು. ಅವು ಹೊಂದಿಕೆಯಾಗದಿದ್ದಾಗ, ಸುರಂಗ ಹೇಗಿದ್ದರೂ ದೃಢೀಕರಣ ಮಾಡುತ್ತದೆ ಮತ್ತು ಹೇಗಿದ್ದರೂ ಮೇಲೇಳುತ್ತದೆ, ಮತ್ತು ಅದೇ ವೈಫಲ್ಯವನ್ನು ಗೊಂದಲಮಯವಾಗಿಸುತ್ತದೆ. ಇಂಟರ್ಫೇಸ್ ಪ್ರತಿ ಸಂಪರ್ಕಕ್ಕೂ ರಚನೆಯಾಗುತ್ತದೆ, ಆದ್ದರಿಂದ ಕೈಯಿಂದ ಹೊಂದಿಸಿದ ವಿಳಾಸ ಆ ಅವಧಿಗೆ ಮಾತ್ರ ಸೇರಿದ್ದು ಬೇರೆ ಯಾವುದಕ್ಕೂ ಅಲ್ಲ. ಇದೇ ಸಮಸ್ಯೆಯ ಆಕಾರ, ಮತ್ತು ಪರಿಹಾರವು ಸಂರಚನಾ ಕಡತವಲ್ಲ, ಹುಕ್ ಆಗಿದೆ. ಉಳಿದದ್ದು ಮೌಲ್ಯವನ್ನು ಎಲ್ಲಿಂದ ಓದಬೇಕು ಮತ್ತು ಎಲ್ಲಿ ಅನ್ವಯಿಸಬೇಕು ಎಂಬುದು.

ವಿಳಾಸವು ಏಕೆ ಮತ್ತೆ ಮತ್ತೆ ಹಿಂತಿರುಗುತ್ತದೆ

kvnet ಒಂದು ವರ್ಚುವಲ್ ಅಡಾಪ್ಟರ್, ಸಂಪರ್ಕ ಆರಂಭವಾದಾಗ ಕ್ಲೈಂಟ್ ಅದನ್ನು ರಚಿಸುತ್ತದೆ ಮತ್ತು ಮುಗಿದಾಗ ತೆಗೆದುಹಾಕುತ್ತದೆ. ಆದ್ದರಿಂದ ಕೈಯಿಂದ ಮಾಡಿದ ip link set ಅದನ್ನು ಅನ್ವಯಿಸಿದ ಅವಧಿಯಷ್ಟೇ ಉಳಿಯುತ್ತದೆ, ಮತ್ತು ಮುಂದಿನ ಸಂಪರ್ಕವು ಕ್ಲೈಂಟ್ ನಿಗದಿಪಡಿಸುವುದರಿಂದ ಆರಂಭವಾಗುತ್ತದೆ. ಕ್ಲೈಂಟ್ ನಿರೀಕ್ಷಿತ ವಿಳಾಸವನ್ನು ಅನ್ವಯಿಸಲು ವಿಫಲವಾಗುವ ಯಂತ್ರದಲ್ಲಿ, ಪ್ರತಿ ಮರುಸಂಪರ್ಕವೂ ಅದೇ ಅಸಂಗತಿಯನ್ನು ಮತ್ತೆ ತರುತ್ತದೆ, ಮತ್ತು ಲೀಸ್ ಅಥವಾ ಪ್ರವೇಶ ನಿಯಮವು ಸಾಧನವನ್ನು ಮತ್ತೆ ತಿರಸ್ಕರಿಸುತ್ತದೆ.

ಆ ಮಾದರಿಯೇ ಸ್ವಯಂ ನಿದಾನಾತ್ಮಕ. ಒಂದು ಅವಧಿಯಲ್ಲಿ ಕೆಲಸ ಮಾಡಿ ಮುಂದಿನದರಲ್ಲಿ ವಿಫಲವಾಗುವ ಸುರಂಗವು ರುಜುವಾತುಗಳ ಸಮಸ್ಯೆಯಲ್ಲ, ಏಕೆಂದರೆ ಸಂಪರ್ಕಗಳ ನಡುವೆ ರುಜುವಾತುಗಳು ಬದಲಾಗುವುದಿಲ್ಲ.

ಮೌಲ್ಯವನ್ನು ಇಂಟರ್ಫೇಸ್‌ನಿಂದ ಅಲ್ಲ, ಕ್ಲೈಂಟ್‌ನಿಂದ ಓದಿ

Linux ಕ್ಲೈಂಟ್ ಮಾತುಕತೆಯ ವಿವರಗಳನ್ನು ತನ್ನ ಡೀಬಗ್ ಲಾಗ್‌ಗೆ ಬರೆಯುತ್ತದೆ, ಮತ್ತು ಅದು ಬಳಸಲು ಉದ್ದೇಶಿಸಿರುವ ವಿಳಾಸವು ಸಂಪರ್ಕ ಅನುಕ್ರಮದ ಕೊನೆಯ ವಿಳಾಸ-ರೂಪದ ಟೋಕನ್ ಆಗಿ ಅಲ್ಲಿ ಕಾಣಿಸುತ್ತದೆ. ಅದನ್ನು ಕರ್ನಲ್ ನಿಜವಾಗಿ ಹಿಡಿದಿಟ್ಟುಕೊಂಡಿರುವುದರೊಂದಿಗೆ ಹೋಲಿಸಿ, ಅದು ಒಂದು readlink ದೂರದಲ್ಲಿದೆ: cat /sys/class/net/kvnet/address.

ಎರಡೂ ಭಿನ್ನವಾಗಿದ್ದರೆ, ಕ್ಲೈಂಟ್ ಸರಿಯಾದ ಮೌಲ್ಯವನ್ನು ತಿಳಿದಿತ್ತು ಮತ್ತು ಅದನ್ನು ಅನ್ವಯಿಸಲು ವಿಫಲವಾಗಿತ್ತು, ಮತ್ತು ಇಂಟರ್ಫೇಸ್ ಇದ್ದ ನಂತರ ಅದನ್ನು ಅನ್ವಯಿಸುವ ಹುಕ್ ಈ ಅಂತರವನ್ನು ಮುಚ್ಚುತ್ತದೆ. ಲಾಗ್‌ನಲ್ಲಿ ವಿಳಾಸವೇ ಇಲ್ಲದಿದ್ದರೆ, ಸಮಸ್ಯೆ ಹಿಂದಿನದು ಮತ್ತು ಸ್ಕ್ರಿಪ್ಟ್‌ಗೆ ಅಲ್ಲ, ಕ್ಲೈಂಟ್ ಆವೃತ್ತಿ ಅಥವಾ ಸರ್ವರ್ ಪ್ರೊಫೈಲ್‌ಗೆ ಸೇರಿದ್ದು.

ಇಂಟರ್ಫೇಸ್ ಇದ್ದ ನಂತರ ಅದನ್ನು ಅನ್ವಯಿಸಿ

NetworkManager ಬಳಕೆದಾರರು ಅದರ ಡಿಸ್ಪ್ಯಾಚರ್ ಕೋಶದಲ್ಲಿ ಸ್ಕ್ರಿಪ್ಟ್ ಇರಿಸಿ, VPN ಇಂಟರ್ಫೇಸ್ ಮೇಲೇಳುವಾಗ ಮಾತ್ರ ಕಾರ್ಯನಿರ್ವಹಿಸಬಹುದು. systemd ನಿರ್ವಹಿಸುವ ಕ್ಲೈಂಟ್‌ಗೆ ಹೆಚ್ಚು ಎಚ್ಚರಿಕೆ ಬೇಕು: ಸೇವೆ ಆರಂಭವಾಗುವಾಗ ಚಲಿಸುವ drop-in ಸಾಮಾನ್ಯವಾಗಿ ಅಡಾಪ್ಟರ್ ಇರುವ ಮೊದಲೇ ಸಕ್ರಿಯವಾಗುತ್ತದೆ, ಆದ್ದರಿಂದ ಹುಕ್ ಅದನ್ನು ಊಹಿಸುವ ಬದಲು ಇಂಟರ್ಫೇಸ್‌ಗಾಗಿ ಕಾಯಬೇಕು. ಆಗ ವಿಳಾಸವನ್ನು ಹೊಂದಿಸಿ, ಮತ್ತು ಲಿಂಕ್ ಮೇಲಿರುವಾಗ ಕರ್ನಲ್ ನಿರಾಕರಿಸಿದರೆ ಅದನ್ನು ಕೆಳಗಿಳಿಸಿ, ವಿಳಾಸ ಹೊಂದಿಸಿ ಮತ್ತೆ ಮೇಲೆತ್ತಿ. ಹೊರತೆಗೆದ ಟೋಕನ್ ಅನ್ನು ip link ಗೆ ನೀಡುವ ಮೊದಲು MAC ಮಾದರಿಯ ಮೂಲಕ ಮತ್ತೆ ಓದಿ, ಅನಿರೀಕ್ಷಿತ ಲಾಗ್ ಸಾಲು ಆರ್ಗ್ಯುಮೆಂಟ್ ಆಗದಂತೆ.

ಕ್ಲೈಂಟ್‌ನ ಲಾಗ್‌ನಿಂದ root ಆಗಿ ಚಲಿಸುವ ಯಾವುದೇ ವಿಷಯ ಸಂಕುಚಿತ ಮಾಲೀಕತ್ವಕ್ಕೆ ಅರ್ಹವಾಗಿದೆ: root ಒಡೆತನದ ಕಡತ, ಇತರರು ಬರೆಯಲಾಗದ, ಮತ್ತು ಪರಿಶೀಲಿಸಿದ ವಿಳಾಸಕ್ಕಿಂತ ಹೆಚ್ಚು ಯಾವುದೇ ಶೆಲ್ ಇಂಟರ್ಪೊಲೇಶನ್ ಇಲ್ಲ. ಮಾದರಿ ಪರಿಶೀಲನೆಯನ್ನು ಸ್ಕ್ರಿಪ್ಟ್‌ನ ಒಳಗೇ ಇರಿಸಿ. ಲಾಗ್‌ನ ವಿಷಯವು ಯಾವ ಆಜ್ಞೆ ಚಲಿಸುತ್ತದೆ ಎಂದು ನಿರ್ಧರಿಸಲು ಬಿಡಬೇಡಿ.

ಲಿಂಕ್ ಬದಲು ಲೀಸ್ ಪರಿಶೀಲಿಸಿ

ip -4 -o addr show dev kvnet ನಿರೀಕ್ಷಿತ ಶ್ರೇಣಿಯಲ್ಲಿ ವಿಳಾಸವನ್ನು ತೋರಿಸಬೇಕು, ip neigh show dev kvnet ಗೇಟ್‌ವೇ ತೋರಿಸಬೇಕು, ಮತ್ತು VPN ಹಿಂದಿನ ಒಂದು ಸೇವೆ ಉತ್ತರಿಸಬೇಕು. ನಂತರ ಒಮ್ಮೆ ಸಂಪರ್ಕ ಕಡಿತಗೊಳಿಸಿ ಮತ್ತೆ ಸಂಪರ್ಕಿಸಿ; ವಿಳಾಸ ಹಿಂತಿರುಗಿದರೆ, ಹುಕ್ ತಪ್ಪು ಘಟನೆಯಲ್ಲಿ ಚಲಿಸುತ್ತಿದೆ ಅಥವಾ ಚಲಿಸುತ್ತಲೇ ಇಲ್ಲ.

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

ಅಪ್‌ಗ್ರೇಡ್ ನಂತರ ವರ್ಕ್‌ಅರೌಂಡ್ ಅನ್ನು ಮತ್ತೆ ಪರಿಶೀಲಿಸಿ

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

ಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ಒಂದೇ ಕುಳಿತಲ್ಲೇ ಓದುವಷ್ಟು ಚಿಕ್ಕದಾಗಿರಿಸಿ. ಲಾಗ್‌ಗಳನ್ನು ಪಾರ್ಸ್ ಮಾಡುವ ವರ್ಕ್‌ಅರೌಂಡ್‌ಗಳು ಸ್ವಭಾವತಃ ತಾತ್ಕಾಲಿಕ. ಉಳಿಯುವವು ಭವಿಷ್ಯದ ಓದುಗನು ಮೂಲ ಥ್ರೆಡ್ ಇಲ್ಲದೆ ಅರ್ಥಮಾಡಿಕೊಳ್ಳಬಹುದಾದವು.

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