Ping හා Tracerout/Tracert කියන්නේ මොකක්ද, මේවා වැඩ කරන්නේ කොහොමද කියල. පළමුවෙන් බලමු ping command 1ක ගැන. ping 1න අපිට පුළුවන් අපි ලබාදෙන IP address 1ක network 1කේ තියෙනවද ඒ IP address 1ට data යවන්න පුලුවන්ද හා අපි යවන data accept කරනවද කියල දැනගන්න. Networking වල troubleshooting වලට බවිත කරන මුලික tool 1ක් තම ping කියන්නේ. Linux, Windows සමග ping command 1ක එනවා.
ping IP_address හෝ ping domain_name විදියට ping command 1ක බවිත කරන්න පුළුවන්.
Ping command 1ක වැඩ කරන්නේ ICMP (Internet Control Message Protocol) 1ක උඩ. ICMP කියන්නේ error-reporting protocol 1ක්. ICMP ගැන වැඩි විස්තර https://goo.gl/hNXWih මෙතනින් කියවන්න පුළුවන්. ICMP 1ක ICMP Type ගොඩක එකතුවක්, මේ ICMP Type තවත් අනු කොටස් වලට බෙදෙනවා. මේ අනු කොටස් ICMP Code කියල හදුන්වනවා. උදාහරණයක් විදියට ICMP Type 3 ගමු, ICMP Type 3 කියන්නේ Destination Unreachable කියන message 1ක. ICMP Type 3 යටතේ ICMP Code 16 (0-15) ක් තියෙනවා. ICMP Code කිහිපයක් බැලුවොත්,
ICMP Code 0 - Destination network unreachable
ICMP Code 1 - Destination host unreachable
ICMP Code 15 - Precedence cutoff in effect
පහත රුපයේ බලාගන්න පුළුවන් ICMP protocol IP header 1කේ හැඩය.
මේ ICMP Type අපට පුළුවන් කොටස් 2ට බෙදන්න. ඒ Query/Response හා Error message කියල. ICMP Type 3,4,5,11,12 error message type.
ඉහතින් මම කිව්වා ping command 1ක ICMP බාවිතා කරනවා කියල. ping ICMP Type 0 - Echo reply හා ICMP Type 8 - Echo request බාවිතා කරනවා. ping command 1ක ප්රථමයෙන්ම ICMP Type 8 - Echo request 1ක් අපි දෙන IP Address 1ට යවනවා. (Domain Name 1ක දුන්නොත් DNS මගින් ඉස්සල්ලම IP Address 1ක හොයාගන්නවා) ඒ data packet 1ක දෙන destination 1ට ගියොත් එතනින් ICMP Type 0 - Echo reply 1ක් එවනවා.පහත රුප වලින් network 1ක තුල data packet pass වෙන විදිය බලාගන්න පුළුවන්. මම Microsoft Network Monitor 3.4 මේ සදහා බවිත කරා මොකද මේ tool 1ක internet dongle support කරනවා.(Wireshark මේ වැඩේට ගොඩක් හොද tool 1ක් ඒ උනාට internet dongle support කරන විදිය මට හොයාගන්න බැරි උන.)
දැන් බලමු Tracerout/Tracert ගැන. Linux වල Tracerout විදියටත් windows වල Tracert විදියටත් මේ tool 1ක එනවා. මේකත් networking වල troubleshooting වලට බවිත කරන tool 1ක්. Tracert වලට අමතරව windows වල PingPath කියල tool 1ක් තියෙනවා මේහා සමාන. මේ tool 1ක් අපි internet 1ක හරහා යවන request 1ක් hop(routers) කියක් පහුකරලා යනවද කියල බලාගන්න පුළුවන්. Tracerout/Tracert ත් ICMP මත implement කරලා තියෙන tool 1ක්. Tracerout/Tracert command 1ක පහත විදියට බාවිතා කරන්න පුළුවන්.
Tracerout/Tracert IP_Address හෝ Tracerout/Tracert Domain_Name
Tracerout/Tracert ICMP Type 0 - Echo Reply, ICMP Type 8 - Echo request හා ICMP Type 11 - Time Exceeded කියන Type ටික බාවිතා කරනවා. ICMP Type 11 වලදී ICMP protocol IP header 1ට TTL (Time-to-Live) value 1ක් එකතු කරනවා. TTL සමහර විට hope limite කියලත් හදුන්වනවා.
මුලින්ම Tracerout/Tracert ICMP Type 8 data packet 1ක් යවනවා, මේකේ TTL value 1ක '1'. මේ packet 1ක පලවෙනි hop 1ට ගියාම TTL value 1ක් check කරනවා, TTL value 1ක '1' නම් hop 1ක ICMP Type 11 - Time Exceeded message 1ක් යවනවා ඒවගේම මේ packet 1ක 1න් විනාශ කරනවා ඊලග hop වලට නොයවා.
මීලගට Tracerout/Tracert මගින් 2 TTL value විදියට තියෙන packet 1ක් යවනවා, පෙර විදියටම පළමු hop 1දී TTL value 1ක් check කරනවා, මේ අවස්ථාවේදී TTL value > 1 නිසා TTL value 1න් '1' අඩු කරලා ඉලග hop 1ට යවනවා, මෙවිට TTL value = 1 නිසා නැවතත් ICMP Type 11 - Time Exceeded message 1ක් Tracerout/Tracert tool 1ට යනන්ව. Tracerout/Tracert මගින් ICMP Type 11 message 1ක් ලැබෙන හැම අවස්ථාවකම TTL value 1ක '1'න් වැඩි කරමින් request message යවනවා. මේ විදියට යනකොට ICMP Type 0 - Echo Reply බවිතවෙන්නේ කොහෙද කියල ප්රශ්නයක් එනවනේ. අපි දෙන IP Address 1ට ඒ කියන්නේ destination 1ට data packet 1ක ගියපුවාම destination 1න් source 1ට ICMP Type 0 - Echo Reply 1ක් එවනවා.පහත රුප වලින් network 1ක තුල data packet pass වෙන විදිය බලාගන්න පුළුවන්. Windows වලදී නම් TTL value 1ට packet 1යි යවන්නේ, ඒ උනාට Linux වලදී වගේ TTL value 1ට packet 3 යවනවා. ඒ වගේම default TTL value 1ක තම 30, hop 30 ඇතුලත packet 1ට destination 1ට යන්න බැරි උනොත් Tracerout/Tracert 1ක fail වෙනවා.








No comments:
Post a Comment