ಅಪ್ಲಿಕೇಶನ್-ಆಧಾರಿತ ಮತ್ತು ಗಮ್ಯಸ್ಥಾನ-ಆಧಾರಿತ ಸ್ಪ್ಲಿಟ್ ಟನೆಲಿಂಗ್ ಒಂದೇ ಕೆಲಸಕ್ಕೆ ಎರಡು ಸೆಟ್ಟಿಂಗ್‌ಗಳಲ್ಲ. ಒಂದು ಯಾವ ಪ್ರಕ್ರಿಯೆ ಪ್ಯಾಕೆಟ್ ಕಳುಹಿಸುತ್ತಿದೆ ಎಂದು ಕೇಳುತ್ತದೆ; ಇನ್ನೊಂದು ಆ ಪ್ಯಾಕೆಟ್ ಎಲ್ಲಿಗೆ ಹೋಗುತ್ತಿದೆ ಎಂದು ಕೇಳುತ್ತದೆ. ಮೊದಲ ಪ್ರಶ್ನೆಗಾಗಿ ನಿರ್ಮಿಸಿದ ನಿಯಮ ಸಹಾಯಕ ಪ್ರಕ್ರಿಯೆಯಿಂದ ಸಂಚಾರ ಬಂದಾಗ ಮೌನವಾಗಿ ವಿಫಲವಾಗುತ್ತದೆ, ಮತ್ತು ಎರಡನೆಯದಕ್ಕಾಗಿ ನಿರ್ಮಿಸಿದ ನಿಯಮ ನೀವು ಎಂದೂ ಪಟ್ಟಿ ಮಾಡದ ವಿಳಾಸಕ್ಕೆ ಹೋಸ್ಟ್‌ನಾಮ್ ಪರಿಹರಿಸಲ್ಪಟ್ಟಾಗ ವಿಫಲವಾಗುತ್ತದೆ. ಅಗತ್ಯಕ್ಕೆ ಹೊಂದುವ ವಸ್ತುವನ್ನು ಆರಿಸಿ, ನಂತರ ಎರಡು ಪರೀಕ್ಷಾ ಪ್ಯಾಕೆಟ್‌ಗಳಿಂದ ಸಾಬೀತುಪಡಿಸಿ: ಒಂದು ಟನೆಲ್ ಬಳಸಬೇಕು ಮತ್ತು ಇನ್ನೊಂದು ಬಳಸಬಾರದು.

ಎರಡು ನಿಯಮಗಳು ಬೇರೆ ಬೇರೆ ಪದರಗಳಲ್ಲಿ ಕೆಲಸ ಮಾಡುತ್ತವೆ

ಅಪ್ಲಿಕೇಶನ್ ನಿಯಮವು ನೆಟ್‌ವರ್ಕ್ ಪದರದ ಮೇಲೆ, ಆಪರೇಟಿಂಗ್ ಸಿಸ್ಟಮ್ ಕಳುಹಿಸುವವರಿಗೆ ನೀಡುವ ಗುರುತಿನ ವಿರುದ್ಧ ಜಾರಿಗೊಳ್ಳುತ್ತದೆ. Android ನಲ್ಲಿ ಅದು ಪ್ಯಾಕೇಜ್‌ನ ಹಿಂದಿನ UID, ಮತ್ತು VPN ಸೇವೆ ಪ್ರತಿ UID ಗೆ ಸಂಚಾರ ಟನೆಲ್ ಪ್ರವೇಶಿಸುತ್ತದೆಯೇ ಎಂದು ನಿರ್ಧರಿಸುತ್ತದೆ. ಗಮ್ಯಸ್ಥಾನದ ಬಗ್ಗೆ ಏನೂ ಕೇಳಲಾಗುವುದಿಲ್ಲ, ಆದ್ದರಿಂದ ಆಯ್ಕೆಮಾಡಿದ ಅಪ್ಲಿಕೇಶನ್ ಯಾವುದಕ್ಕೂ ತಲುಪಬಹುದು ಮತ್ತು ಬೇರೆ ಯಾವುದೇ ಅಪ್ಲಿಕೇಶನ್ ಒಳಗಿನ ನೆಟ್‌ವರ್ಕ್ ತಲುಪಲಾರದು.

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

ಅಪ್ಲಿಕೇಶನ್ ನಿಯಮಗಳು ಮೊಬೈಲ್ ಕ್ಲೈಂಟ್ ಮತ್ತು ನಿರ್ವಹಿತ ಏಜೆಂಟ್‌ಗಳಿಗೆ ಸರಿಹೊಂದುತ್ತವೆ

Android ಆಯ್ಕೆಯನ್ನು ನೇರವಾಗಿ ಒಡ್ಡುತ್ತದೆ: VpnService.Builder.addAllowedApplication() ಮತ್ತು addDisallowedApplication() ಪ್ಯಾಕೇಜ್ ಹೆಸರುಗಳನ್ನು ತೆಗೆದುಕೊಂಡು ಪ್ರತಿ UID ಗೆ ನಿರ್ಧಾರವನ್ನು ಜಾರಿಗೊಳಿಸುತ್ತವೆ, Android ನ VPN ಡೆವಲಪರ್ ಮಾರ್ಗದರ್ಶಿಯಲ್ಲಿ ವಿವರಿಸಿದಂತೆ. iOS ನಲ್ಲಿ ಬಂಡಲ್ ಗುರುತಿಸುವಿಕೆಗಳನ್ನು ಆಧರಿಸಿದ ಪ್ರತಿ-ಅಪ್ಲಿಕೇಶನ್ VPN ನಿಯಮಗಳ ಮೂಲಕ ಸಮಾನ ವ್ಯವಸ್ಥೆ ಇದೆ, ಸಾಮಾನ್ಯವಾಗಿ ಕೈಯಿಂದ ಬರೆಯುವ ಬದಲು MDM ಪ್ರೊಫೈಲ್‌ನಿಂದ ನೀಡಲಾಗುತ್ತದೆ.

ಡೆಸ್ಕ್‌ಟಾಪ್ ಕ್ಲೈಂಟ್‌ಗಳು ದುರ್ಬಲ ಸ್ಥಾನ. ಹೆಚ್ಚಿನ Windows ಮತ್ತು macOS VPN ಕ್ಲೈಂಟ್‌ಗಳು ಗಮ್ಯಸ್ಥಾನದ ಪ್ರಕಾರ ರೂಟ್ ಮಾಡುತ್ತವೆ ಮತ್ತು ಪ್ರಕ್ರಿಯೆವಾರು ಆಯ್ಕೆಯನ್ನು ಸಹ ನೀಡುವುದಿಲ್ಲ, ಏಕೆಂದರೆ ಟನೆಲ್ ಡ್ರೈವರ್ ಪ್ಯಾಕೆಟ್‌ಗಳನ್ನು ನೋಡುತ್ತದೆ, ಪ್ರಕ್ರಿಯೆಗಳನ್ನಲ್ಲ. ನಿಮ್ಮ ಯೋಜನೆ ಲ್ಯಾಪ್‌ಟಾಪ್‌ನಲ್ಲಿ ಒಂದು ಅಪ್ಲಿಕೇಶನ್ ಟನೆಲ್ ಮಾಡುವುದನ್ನು ಅವಲಂಬಿಸಿದ್ದರೆ, ಅದರ ಸುತ್ತ ವಿನ್ಯಾಸ ಮಾಡುವ ಮೊದಲು ಕ್ಲೈಂಟ್‌ನ ನಿಜವಾದ ಸಾಮರ್ಥ್ಯಗಳನ್ನು ಪರಿಶೀಲಿಸಿ; ನೀವು ಗಮ್ಯಸ್ಥಾನ ಪಟ್ಟಿ ಮತ್ತು ಎರಡನೇ ಯಂತ್ರದ ನಡುವೆ ಆಯ್ಕೆ ಮಾಡುತ್ತಿರಬಹುದು.

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

ಗಮ್ಯಸ್ಥಾನ ನಿಯಮಗಳು ಸಬ್‌ನೆಟ್ ಪಟ್ಟಿ ಮತ್ತು ಸೈಟ್ ತಲುಪುವಿಕೆಗೆ ಸರಿಹೊಂದುತ್ತವೆ

WireGuard ಮಾದರಿಯನ್ನು ಸ್ಪಷ್ಟಗೊಳಿಸುತ್ತದೆ. AllowedIPs ಕ್ರಿಪ್ಟೊಕೀ ರೂಟಿಂಗ್: ಗಮ್ಯಸ್ಥಾನ ಪೀರ್‌ನ ಪಟ್ಟಿಯೊಳಗೆ ಬೀಳುವ ಒಳ ಪ್ಯಾಕೆಟ್ ಆ ಪೀರ್‌ಗೆ ಎನ್‌ಕ್ರಿಪ್ಟ್ ಆಗುತ್ತದೆ, ಮತ್ತು ಉಳಿದೆಲ್ಲವೂ ಸಾಮಾನ್ಯ ಮಾರ್ಗದಲ್ಲಿ ಎನ್‌ಕ್ರಿಪ್ಶನ್ ಇಲ್ಲದೆ ಹೊರಡುತ್ತದೆ. ಹೆಸರಿಸಲು ಪ್ರಕ್ರಿಯೆ ಇಲ್ಲ ಮತ್ತು ಏನು ಸೇರಿದೆ ಎಂಬುದರಲ್ಲಿ ಯಾವುದೇ ಅಸ್ಪಷ್ಟತೆ ಇಲ್ಲ.

OpenVPN ತಳ್ಳಲಾದ ರೂಟಿಂಗ್ ಟೇಬಲ್ ಮೂಲಕ ಅದೇ ಸ್ಥಳವನ್ನು ತಲುಪುತ್ತದೆ. route-nopull ಸರ್ವರ್ ರೂಟ್‌ಗಳನ್ನು ಆದೇಶಿಸುವುದನ್ನು ನಿಲ್ಲಿಸುತ್ತದೆ, ನಂತರ ಕ್ಲೈಂಟ್-ಬದಿಯ route 10.20.0.0 255.255.0.0 vpn_gateway ಕಚೇರಿ ಪೂರ್ವಪ್ರತ್ಯಯವನ್ನು ನಿಖರವಾಗಿ ಒಳಗೊಳ್ಳುತ್ತದೆ. IPv6 ಈ ಪ್ರತಿಯೊಂದು ಕ್ಲೈಂಟ್‌ನಲ್ಲೂ ಪ್ರತ್ಯೇಕ ಹೇಳಿಕೆ, ಮತ್ತು ಅದನ್ನು ಮರೆಯುವುದು ಸರಿಯಾಗಿ ಕಾಣುವ IPv4 ವಿಭಜನೆಯ ಸುತ್ತ ಸೋರಿಕೆಯ ಸಾಮಾನ್ಯ ವಿಧಾನ.

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

ಎರಡೂ ಮಾದರಿಗಳು ಮುರಿಯುವ ಸ್ಥಳ: ಸಹಾಯಕರು, ಹಂಚಿದ ಸೇವೆಗಳು, ರಿಜಾಲ್ವರ್‌ಗಳು

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

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

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

ಕಾರ್ಯವಿಧಾನ: ಆರಿಸಿ, ಅನ್ವಯಿಸಿ, ಪರಿಶೀಲಿಸಿ

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

ನೀವು ವ್ಯಕ್ತಪಡಿಸಬಹುದಾದ ಅತ್ಯಂತ ಸಂಕುಚಿತ ರೂಪವನ್ನು ಅನ್ವಯಿಸಿ, ನಂತರ ಕ್ಲೈಂಟ್‌ನ ಸ್ಥಿತಿ ಐಕಾನ್ ಬದಲು ರೂಟಿಂಗ್ ಟೇಬಲ್ ಅನ್ನು ಕೇಳುವ ಮೂಲಕ ಪರಿಶೀಲಿಸಿ:

ip route get 10.20.30.40
ip -6 route get 2001:db8:10::40
wg show wg0 allowed-ips
Get-NetRoute -DestinationPrefix 10.20.0.0/16
Find-NetRoute -RemoteIPAddress 10.20.30.40

ಮೊದಲ ಎರಡು ಸಾಲುಗಳು ನಿಜವಾದ ಗಮ್ಯಸ್ಥಾನ ಬಳಸುವ ಇಂಟರ್‌ಫೇಸ್ ಅನ್ನು ಹೆಸರಿಸುತ್ತವೆ; wg show ಸಂರಚಿತ ಪೂರ್ವಪ್ರತ್ಯಯ ಪಟ್ಟಿಯನ್ನು ಮುದ್ರಿಸುತ್ತದೆ; Windows ನಲ್ಲಿ Find-NetRoute ಪ್ಯಾಕೆಟ್ ಕಳುಹಿಸಿದಾಗ ಸ್ಟ್ಯಾಕ್ ಉತ್ತರಿಸುವ ಅದೇ ಪ್ರಶ್ನೆಗೆ ಉತ್ತರಿಸುತ್ತದೆ. ಇಂಟರ್‌ಫೇಸ್ ಟನೆಲ್ ಆಗಿದ್ದರೆ, ನಿಯಮ ಹೊಂದಿಕೆಯಾಯಿತು.

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

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