ความแตกต่างการการใช้งาน filter ในการมองหาปัญหาที่อาจจะเกิดขึ้น

ซินจ่าวววววววว 😉

อาทิตย์นี้มาทำงานที่เวียดนามครับ ขอสลับโหมดจากงานมาเขียน Blog สักหน่อยแก้ปวดหัว ^^”

จากใน Facebook page ครั้งก่อนมีการเกริ่นว่าจะแนะนำข้อแตกต่างของการใช้งาน Command filter สองตัวคือ tcp.port และ telnet ซึ่ง Telnet ก็เป็น Application ตัวหนึ่งซึ่งใช้ Protocol TCP ในการสื่อสาร และเมื่อใช้ Command ตัวอย่างไปแล้วก็ได้ผลลัพธ์ออกมาคล้ายกันมากทีเดียว แล้วการใช้งาน Command ในรูปแบบไหนจะดีกว่ากัน วันนี้เราจะมาอธิบายกันในหัวข้อวันนี้ครับ

ก่อนจะไปไกลที่ Application เรามาเริ่มที่ Protocol กันก่อน โดยส่วนตัวแล้วคิดว่าใครก็ตามที่ได้เรียนด้าน Computer มาก็จะรู้จักคำว่า TCP handchecking กันมาบ้างแน่นอน (ผมเพิ่งมารู้จักตอนทำงานนี่ล่ะ ข้อเสียของการจบไม่ตรงสาย ^^”) โดยทั่วไปแล้วจะมีการกล่าวถึง TCP handchecking กันอยู่ 2 packet คือ

  1. Sync
  2. Sync/Ack
  3. Ack

ตามที่เรียนมาทั้ง 3 packet นั้นก็จะอยู่ในรูปด้านบนในส่วนของ Open connaction ที่เขียนด้วยตัวอักษรสีม่วงด้านซ้ายมือ เมื่อสามารถ Open connection ได้แล้วตัว Application ก็จะเริ่มเข้าสู่การสื่อสาร โดยจะเริ่มส่งข้อมูลกันในลำดับถัดไปนั่นเอง และเมื่อได้ข้อมูลครบแล้ว เมื่อเลิกใช้งานก็จะมีการปิดการสื่อสารตรงส่วนนี้เองก็จะเกิด Close connection ในส่วนของตัวหลังสือสีแดงด้านซ้ายมือในรูป เป็นอันจบเรื่องของ TCP แบบคร่าวๆครับ

 

คราวนี้ลองมาดูใน Wireshark กันดีกว่า ในตัวอย่างนี้เอามาจากใน Lab ที่สอนในห้องเรียนมาเพื่อที่จะได้ประหยัดเวลา ตัวอย่างที่ใช้เป็นการ Telnet เข้าไปที่ Cisco router ตัวหนึ่งซึ่งเราใช้ EVE-NG จำลองขึ้นมาตามในรูปด้านล่างนี้ แล้วก็เปิด Terminal ขึ้นมาเพื่อ Telnet เข้าสู่ Virtual router ตัวนี้ และก็ได้เก็บ Packet ตัวอย่างออกมาครับ

คราวนี้เรามาลองใช้งาน Command filter กันเลยเริ่มต้นด้วย “telnet” ที่เป็นชื่อของ Application ที่เราใช้ลงในช่อง Filter expression ตามในรูปด้านล่างนี้ สิ่งที่ Wireshark แสดงผลออกมาให้คือ

จากผลที่ได้จะเห็นว่า Packet แรกที่ได้เป็น Data ที่ถูกส่งมาเป็น Packet แรกถูกส่งออกมาจากฝั่ง Server และหลังจากนั้นจะเป็น Packet ที่มีการรับส่งระหว่างกันไปเรื่อยๆ ตราบเท่าที่มีการร้องขอ Data

ต่อมาก็ลองใช้ Filter command ใหม่อีกตัวหนึ่ง “tcp.port==23” การใช้ Command นี้ก็มาจากพื้นฐานของ Application Telnet ใช้ Protocol TCP และใช้ Port หมายเลข 23 ดังนั้นจึงเป็นที่มาของ Command filter นี้

จากผลที่ได้จะเห็นว่า Packet แรกที่ได้เป็น TCP handcheck แล้ว และเป็นการเปิด Connection มาจาก Client ตามที่ได้เรียนมาตามทฤษฎีเป๊ะเลย

มาต่อกันที่ว่าไอ้แบบที่ใช้ Command filer “telnet” กับ “tcp.port==23” จะเอามาใช้ในกรณีไหนบ้าง

  1. ใช้ Command “telnet” ก็ต่อเมื่อไม่ได้มีปัญหาในการเชื่อมต่อ และต้องการดูเฉพาะข้อมูลที่อยู่ข้างใน หัวข้อนี้เดี๋ยวมาต่อในบทความหน้านะครับ ^^
  2. ใช้ Command “tcp.port==23” ข้อดีจากที่เห็นจากตัวอย่างคือ การที่เราเห็นขั้นตอนตั้งแต่การเปิด TCP connection แบบ TCP handcheck ดังนั้น การใช้งาน Command นี้จะใช้ในกรณีที่การเชื่อต่อมีปัญหา ดังนั้นเมื่อเราไม่สามารถใช้งาน Application ได้ เราก็จะต้องมาให้ความสนใจกับการเปิด TCP connection นั่นเองครับ

สำหรับบทความนี้ก็ขอจบไว้เท่านี้ครับ

Leave a reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.