Sunday 26 September 2010

การConfig SSHให้มีความปลอดภัย


เพื่อให้มีความปลอดภัยจาก hacker มาขึ้นซึ่งไฟล์config ssh ของ debian จะอยู่ใน /etc/ssh
ให้เราทำการพิมพ์ cd  /etc/ssh/
จากนั้นให้ทำการแก้ไข ไฟล์config ของ ssh ดังนี้
พิมพ์ nano  sshd_config
เป็นการใช้โปรแกรม nano คือโปรแกรมคล้าย notepad ใน linux ในการแก้ไขไฟล์ จะมีข้อความในไฟล์ config ซึ่งมีความหมายดังนี้
คำแนะนำในการปรับแต่งค่าต่างๆ ที่สำคัญในไฟล์ /etc/ssh/sshd_config ให้มีความปลอดภัย มีดังนี้
Port   22
ระบุหมายเลขพอร์ตที่ใช้ในการติดต่อ โดยค่า default แล้วจะอยู่ที่พอร์ตที่ 22 แต่ถ้าแก้ไขให้ใช้พอร์ตอื่นก็จะสามารถหลอกแฮ็กเกอร์ที่อ่อนประสบการณ์ที่ได้รหัสผ่านแต่ก็ยังไม่ทราบพอร์ตได้
ListenAddress   192.168.1.1
ระบุหมายเลข IP ให้กับฝั่งเซิร์ฟเวอร์ว่าให้รอรับการติดต่อทาง IP ใด จะเห็นผลชัดเจนยิ่งขึ้น ถ้าเครื่องเซิร์ฟเวอร์ดังกล่าวให้บริการไฟร์วอลล์ด้วย
HostKey   /etc/ssh/ssh_host_key
ระบุไดเรกทอรีที่ใช้เก็บคีย์ private ของโฮสต์
ServerKeyBits   1024
ระบุจำนวนบิตที่จะใช้ในคีย์ของเซิร์ฟเวอร์ ซึ่ง default คือ 768 ให้ทำการแก้ไขเป็น 1024
LoginGraceTime   600
ระบุเวลาในหน่วยวินาทีหลังจากมีการร้องขอการติดต่อจากไคลเอ็นต์จนกระทั่งสิ้นสุดการติดต่อโดยที่ยังไม่มีการ Login
KeyRegenerationInterval   3600
ระบุอายุของคีย์ หรือระยะเวลาเป็นวินาทีที่จะสร้างคีย์ใหม่ โดยค่า default อยู่ที่ 3600
PermitRootLogin   no
ระบุว่าอนุญาตให้ accout ของ root ทำการ login เข้าระบบได้โดยตรงหรือไม่ ให้เปลี่ยนเป็น no
IgnoreRhosts   yes
ระบุไม่อนุญาตให้ใช้ไฟล์ rhosts หรือ shosts สำหรับการ authenticate
StrictModes   yes
ก่อนที่จะมีการอนุญาตให้ Login เข้ามาในระบบได้ sshd จะตรวจสอบ permission ในไดเรกทอรี home ของผู้ใช้แต่ละคน และไฟล์ rhosts ก่อน ดังนั้นออปชันนี้ให้เลือก yes เพราะบางครั้งผู้ใช้บางคนอาจจะเปลี่ยนแปลง permission ให้ผู้อื่นสามารถเขียนได้โดยไม่เจตนา
PrintMotd   yes
ระบุให้ sshd แสดงข้อความที่อยู่ในไฟล์ /etc/motd เมื่อมีผู้ใช้งานระบบทำการ Login ซึ่งไฟล์ /etc/motd นั้นรู้จักกันในชื่อของ “message of the day”
RhostsAuthentication   no
ระบุให้ sshd สามารถที่จะใช้ rhosts ในการ authenticate ได้ แนะนำว่าไม่ควรที่จะใช้เพราะว่า rhosts นั้นไม่มีความปลอดภัย
RhostsRSAAuthentication   no
ระบุว่าจะให้สามารถใช้ rhosts ร่วมกับ RSA ในการ authenticate ได้หรือไม่
RSAAuthentication   yes
ระบุว่าให้ใช้ RSA ในการ Authenticate โดย RSA จะใช้คีย์คู่ทั้ง public และ private ที่ถูกสร้างโดย ssh-keygen1utility ในกระบวนการ Authenticate
PasswordAuthentication   yes
ระบุว่าให้ใช้รหัสผ่านในการทำ Authenticate
PermitEmptyPasswords   no
ระบุว่าจะอนุญาตให้ Login โดยไม่ต้องใช้รหัสผ่านหรือไม่ ให้เลือก no เพื่อบังคับให้ป้อนรหัสผ่านทุกครั้ง
AllowUsers   admin
ระบุว่าจะอนุญาตให้ใคร Login ได้บ้าง โดยค่า default แล้วจะอนุญาตให้ทุกคนสามารถ Login เข้าระบบได้ และสามารถเพิ่มชื่อผู้ใช้ที่อนุญาตได้หลายคน โดยแยกแต่ละชื่อด้วยเครื่องหมายช่องว่างหรือ space
Subsystem   sftp   /usr/libexec/openssh/sftp-server
ระบุให้ใช้ sftp โดยค่า default จะอนุญาตอยู่แล้ว

Monday 13 September 2010

ปัญหาของเครือข่ายในระดับชั้น Network

ปัญหาของเครือข่ายในระดับชั้น Networkเป็นปัญหาการทำงานของโปรโตคอลในระดับระบบปฏิบัติการ ที่ใช้โปรโตคอล อย่าง เช่น IP หรือ IPX เป็นต้น
ลักษณะของปัญหาในระดับชั้นเครือข่าย (Network) 
  ปัญหาของเครือข่ายในระดับชั้น Network เป็นปัญหาการทำงานของโปรโตคอลในระดับระบบปฏิบัติการ ที่ใช้โปรโตคอล อย่าง เช่น IP หรือ IPX เป็นต้น แต่ในฉบับนี้ จะขอเน้นแต่ ปัญหาของ IP
   *ปัญหาต่างๆที่เกี่ยงข้องกับระดับชั้นเครือข่าย มีดังนี้
 -ไม่สามารถ ใช้คำสั่ง Ping แต่มีข้อความแสดงความผิดพลาดพร้อม Error Code
 -ไม่สามารถ Ping เครื่องคอมพิวเตอร์ ที่อยู่ในเครือข่ายเดียวกันได้
-ไม่สามารถ Ping เครื่องคอมพิวเตอร์ที่อยู่ต่างเครือข่าย หรือ Subnet ได้
-ไม่สามารถ Ping ชื่อเครื่องคอมพิวเตอร์ที่อยู่ในเครือข่ายเดียวกันได้
-ไม่สามารถ Ping ชื่อเครื่องคอมพิวเตอร์ที่อยู่ต่างเครือข่ายกันได้
 -เกิดปัญหา ความผิดพลาด ที่แสดงว่า เกิดการขัดแย้งขึ้นบนเครือข่าย
 -เกิด ข่าวสารเกี่ยวกับความผิดพลาดขณะจะ Logon เข้าไปที่ Server
 -สามารถ Ping เห็นเครื่องคอมพิวเตอร์ปลายทาง แต่ได้รับคำตอบว่า Destination Unreachable
 -ตรวจพบว่า มี Retransmission เกิดขึ้นมากมายบนเครือข่าย (รูปที่ 1)
การเกิด Retransmission บน TCP/IP
 -ผู้ใช้งานสามารถ Access เข้าไปที่ Host หรือ Server บางตัวเท่านั้น ส่วน Host หรือ Server อื่น ไม่สามารถ Access เข้าไปได้ หรือฟ้อง Error ออกมา
 -มีเพียง โปรโตคอลบางตัวเท่านั้นที่สามารถวิ่งออกผ่าน Router ได้
 -เครื่องไม่สามารถ Access Host อื่นๆ ที่อยู่คนละเครือข่าย ผ่านทาง Router
 -สามารถ Access ไปที่ Host หรือ Server เฉพาะบาง Services เท่านั้น
 -ไม่สามารถ Ping Loop back Address (127.0.0.1) บนเครื่องที่มีปัญหา
 -ไม่สามารถ Ping หรือติดต่อกับ Default Router
 -การเชื่อมต่อเกิดหลุดเป็นครั้งคราวเอาแน่ไม่ได้
 -คอมพิวเตอร์ลูกข่ายที่ไม่มี Disk ไม่สามารถทำงานได้
 -ประสิทธิภาพการทำงานของ TCP/IP ต่ำมาก
 -TCP Windows Size เล็กเกินไป
-TCP Windows Size ถูก Drop ในปริมาณที่น้อยกว่าค่าสูงสุด
 -ค่า Windows Size คงที่ แต่ Packet ประเภท Acknowledge มีการตอบรับช้ามาก
 -ขนาดของ TCP Windows โตเกินไป
 -มีปัญหาขณะการใช้ RIP
การจัดตั้งค่า IP และ Subnet mask ไม่ถูกต้อง สาเหตุโดยทั่วไปที่เกิดขึ้นบนระดับชั้น Network
 -Application ไม่ได้เปิดใช้ หรือไม่สามารถใช้งานได้
 -เครื่องคอมพิวเตอร์ปลายทาง ไม่อยู่ในสถานะพร้อมที่จะทำงาน
 -DNS Server ไม่สามารถทำ Reverse Lookup และหรือไม่สามารถตอบรับการร้องขอการทำ Reverse Lookup ของเครื่องคอมพิวเตอร์อื่นๆ
 -ตาราง DNS ไม่สมบูรณ์ หรือไม่มีค่าเบอร์ IP หรือข้อมูลเกี่ยวกับการ Mapping ชื่อ Domain ให้กับ Host
 -IP Address ชนกัน : มีเครื่องคอมพิวเตอร์อื่นที่ใช้ IP ซ้ำกัน
 -ชื่อของ Host และ IP Address เกิดมีปัญหา
 -Port ของ Router ไม่สามารถทำงานได้ตามปกติ
การทำงานปกติ Serial Port บน Router
 -เบอร์ IP ที่ Ping ไปที่ เครื่องคอมพิวเตอร์ปลายทาง ไม่ถูกต้อง
 -เครื่องคอมพิวเตอร์ปลายทางถูกจัด Configure เกี่ยวกับ เบอร์ IP หรือ Subnet Mask ไม่เรียบร้อย
 -มีการจัด Filter บน Router ด้วย Access List ไม่ถูกต้อง
 -Routing Table ไม่ถูกต้อง เนื่องจาก ข่าวสารเกี่ยวกับ Routing Table ได้รับมาจาก Interface หรือ โปรโตคอลนั้นไม่ถูกต้อง
 -การจัดตั้งค่า Configure ของ Terminal ไม่ถูกต้อง
 -User ID หรือ Password ไม่ถูกต้อง
 -เกิดการจัด Configure ค่า Default Gateway ของ Host หรือ Router ไม่ถูกต้อง
 -การจัด Configure ของ LAN Card หรือ Interface ไม่ถูกต้อง
 -การจัด Configure Router ให้ Block BOOTP Frame
 -การจัด Configure Virtual Link ไม่ถูกต้อง
 -IP Address ของ Default Route ใน Table ของ Router เกิดความผิดพลาด
 -IP Address ของ DNS Server ไม่ถูกต้อง หรือการปัญหาจากการ Configure ที่มีต่อเครื่องที่มีปัญหา
 -IP Address หรือ Subnet mask ของเครื่องที่มีปัญหา ไม่ได้รับการจัด Configure อย่างถูกต้อง
 -ไม่มีการกำหนดค่า Default Gateway อย่างถูกต้องบน Router
 -ที่ Port ของ Router ไม่ได้กำหนด IP Address อย่างถูกต้อง
 -Host ปลายทาง หรือเครือข่ายทำงานหนักจนเกินไป
 -การจัด Configure DNS แก่ Client ไม่ถูกต้อง ทำให้ Client จะต้องรอให้ การร้องขอใช้บริการของ DNS Server Timeout เสียก่อนที่จะพยายามติดต่อกับDNS Server ตัวที่สอง
 -เครื่องที่มีปัญหา ไม่ได้เชื่อมต่อกับเครือข่าย
 -Route Distribution ของ IGRP หรือ RIP ไม่ได้รับการจัด Configure อย่างถูกต้อง
 -Router ได้ทำการ Block UDP Broadcast Forwarding ทำให้ ไม่สามารถส่ง BOOTP Broadcast ออกมาได้ ตามปกติ
 -Port ของ Router ที่เชื่อมต่อไปยังปลายทางไม่สามารถทำงานได้ตามปกติ
 -ค่า Sub Netmask ของ Host และ Router ไม่เข้ากัน
 -การเชื่อมต่อ TCP ระหว่าง Host เกิด Time out
 -TCP/IP Software หรือ Driver ของ LAN Card ไม่ได้รับการจัด Configure อย่างถูกต้อง
 -Hello และ Dead Timer ของ Router ต่างๆ ทำงานไม่ประสานงานกัน
 -Router Access List ไม่ถูกต้องหรือ การจัด Configure ไม่สอดคล้องต่อการใช้งาน
 -Router Access List ถูกกำหนดให้ Block บาง Application หรือ Port
Ping เป็นเครื่องมือที่ถูกใช้เพื่อการตรวจสอบ การเชื่อมต่อระหว่าง 
 -คอมพิวเตอร์กับคอมพิวเตอร์ด้วยกัน
 -คอมพิวเตอร์กับ LAN Card
 -คอมพิวเตอร์บนเครือข่าย กับโปรโตคอล TCP/IP
 -คอมพิวเตอร์บนเครือข่ายกับ Router และอุปกรณ์เชื่อมต่อระหว่างเครือข่าย รวมทั้ง Gateway
 -การเชื่อมต่อระหว่างอุปกรณ์ Router กับ Router ด้วยกัน

การใช้คำสั่ง Ping เพื่อตรวจสอบสถานการณ์เชื่อมต่อ รวมทั้งค่าการตอบสนองจากเครื่องปลายทาง
   คำสั่ง Ping ไม่เพียงแต่สามารถแสดง สถานการณ์เชื่อมต่อระหว่างเครื่องลูกข่าย หรือ Router แล้ว แต่ยัง สามารถถูกนำมาใช้เพื่อการ ดู เวลาของการตอบสนอง ของเครื่องลูกข่าย เพื่อให้รู้ว่า สถานะของเครือข่าย หรือสถานะของเครื่องลูกข่ายนั้น เป็นอย่างไร นอกจากนี้ การใช้ Ping เป็นการสร้างกระแสของTraffic บนเครือข่ายระหว่างเครื่องคอมพิวเตอร์เครื่อง บนเครือข่ายได้
      แม้ว่าาการเชื่อมต่อ ระหว่าง เครื่องลูกข่าย ปลายทาง จะเป็นไปตามปกติ ท่านยังสามารถตรวจสอบพบว่า ค่า Round Trip Time นั้น อาจดูสูงเกินไป ซึ่งเป็นการบ่งบอกว่า เครื่องลูกข่ายปลายทางอยู่ไกลมาก หรือไม่ก็กำลังยุ่งอยู่กับการให้บริการ หรือไม่ก็เครือข่ายของเครื่องปลายทาง กำลังยุ่งหรือการจราจรติดขัด ส่งผลให้ การตอบรับของคำสั่ง Ping นั้นล่าช้า
ค่า Round Trip Time ของ Ping ที่เกิดจากการ Ping ผ่าน Router ไปยัง Host ที่อยู่ห่างกันคนละเครือข่าย
การใช้งานคำสั่ง Ping บน Windows 
คำสั่ง Ping มีการทำงานในลักษณะคล้ายกับเครื่องโซน่า ในเรือดำน้ำ ที่มีการส่งสัญญาณที่เรียก Ping ออกไป จากนั้น ก็ทำการตรวจสอบการสะท้อนกลับของคลื่นสัญญาณ อีกทั้งยังสามารถวัดระยะทางความห่าง ระหว่างเรือดำน้ำกับเป้าหมายปลายทางได้
  *ส่วนประกอบการทำงานของ Ping
1. Ping ใช้โปรโตคอล ICMP (Internet Control Message Protocol) ซึ่งเป็นหนึ่งในชุดของโปรโตคอลของ TCP/IP เพื่อนำพาข้อมูลข่าวสารไปส่ง รวมทั้งรับข่าวสารกลับมาจากปลายทาง เพื่อส่งมอบให้กับท่าน
2. สิ่งที่ปรากฏในลักษณะการรายงานบนหน้าจอของ Ping ได้แก่ สถานการณ์เชื่อมต่อ และ ค่า Round Trip Time โดยค่านี้จะเริ่มนับตั้งแต่เครื่องต้นทางส่งPing ออกไป และได้รับการสะท้อนกลับมาค่า นี้มีหน่วยเป็น ms ซึ่งจะทำให้ท่านสามารถรู้ได้ว่าประสิทธิภาพของเครือข่ายในขณะนั้น เป็นอย่างไร?
3. ผลลัพธ์ที่แสดงออกมาบนหน้าจอ จะแตกต่างกันออกไป ในแต่ละเครื่อง ตัวเลขของค่า Round Trip Time สามารถบอกท่านได้ดังนี้
   -ระยะทางความห่างคิดเป็นจำนวน Hop โดยดูจาก ค่าของ TTL ที่เปลี่ยนแปลงไป
   -เวลาที่ใช้ไปกับการเดินทางระหว่างท่านกับคอมพิวเตอร์ปลายทาง หากค่าของเวลายิ่งมาก ยิ่งบ่งบอกถึงประสิทธิภาพที่ด้อยลงของเครือข่าย หรือเครื่องคอมพิวเตอร์เครื่องนั้น มีความพร้อมสักเพียงใด ด้วยเหตุนี้ท่านควร Ping เครื่องคอมพิวเตอร์หลายเครื่อง เพื่อดูค่าแตกต่าง
การใช้คำสั่ง Ping 
หาก Ping ไม่ให้ข่าวสารที่แสดงว่ามีการตอบสนอง 
ลักษณะของข่าวสารที่แสดงว่า เกิดปัญหา มีมากมายหลายประการ เช่น Error Message ดังต่อไปนี้
   -Request Time Out - แสดงว่า เครื่องคอมพิวเตอร์ปลายทาง ไม่มีตัวตน หรือยังไม่ได้เชื่อมต่อกับเครือข่าย หรือ ปัญหาเกี่ยวกับการเชื่อมต่อ หรือ อยู่ห่างมากเกินไป มีค่า Delay มากเสียจน เกิด Time Out
   -Destination Unreachable - เครื่องคอมพิวเตอร์ปลายทาง อยู่ไกลเกินไป มี Delay มากไป หรือเครือข่ายที่เครื่องคอมพิวเตอร์ปลายทาง ติดตั้งอยู่ มีปัญหาติดขัด
   -มีข้อความ Reply From บ้าง Request Time Out บ้าง ในการ Ping เพียงครั้งเดียว แสดงถึงปัญหาของประสิทธิภาพเครือข่าย รวมทั้ง มีปัญหา ของโปรโตคอลเกิดขึ้น นอกจากนี้ การเกิด Delay และความไม่แน่นอน ในด้านความพร้อมของเครื่องปลายทาง ก็เป็นสาเหตุหลัก เช่นเดียวกัน เพื่อให้มั่นใจว่า อาจเป็นปัญหาของเครือข่าย หรือความไม่พร้อมของเครื่องคอมพิวเตอร์ปลายทาง ให้ใช้คำสั่ง Ping - t เพื่อ Ping อย่างต่อเนื่อง แล้วตรวจสอบดูว่า มีครั้งใดบ้างที่มี ทั้ง Request Time Out รวมทั้ง Reply From ..... หรือ Destination Unreachable บ้าง หากมี ให้ลอง เช่นนี้ กับเครื่องอื่นๆ ในเวลาเดียวกัน หาก เครื่องอื่นมีอาการเดียวกัน มีความเป็นได้อย่างมาก ที่ระบบเครือข่ายนี้ ซึ่งหากใช้ Shared Hub จะเป็น ปัญหาค่า Round Trip Delay เกินมาตรฐาน แต่หากเป็นSwitching Hub ก็เป็นไปได้ที่ มีปัญหา การเชื่อมต่อ Switches Hub หลาย Hub มากเกินไป ทำให้เกิด Delay สูง รวมทั้งประสิทธิภาพของเครือข่ายลดลง
   -ชื่อของเครื่องคอมพิวเตอร์
การใช้คำสั่งเพื่อตรวจสอบความเรียบร้อยของค่า Configuration ของเครือข่าย
   *คำสั่ง ipconfig/all
ipconfig/all เป็นคำสั่งที่ทำให้ท่านสามรถตรวจสอบดู ค่า Configure ต่างๆ ของเครื่อง รวมทั้งเครือข่าย คำสั่งนี้ จะให้ท่านได้ทราบข้อมูล และสามารถตรวจสอบ เมื่อใดที่เกิดปัญหาขึ้น ดังนี้
 -ความพร้อมที่จะทำ Routing
 -Address ของ LAN Card
 -เลขหมาย IP Address ของคอมพิวเตอร์เครื่องนี้
 -เลขหมายของ Sub netmask ของคอมพิวเตอร์เครื่องนี้
 -เลขหมายของ Default Gateway
 -IP address ของ DNS Server
 -ความพร้อมของ DHCP Server
ค่าที่แสดงบนหน้าจอจาก IPCONFIG บอกอะไรแก่เรา ? 
    ค่าที่แสดงบนหน้าจอ จาก IPCONFIG บอกอะไรดีๆ เกี่ยวกับการ Troubleshooting แก่เรา ดังนี้ 
   1. เลขหมาย Address ของ LAN Card - ในกรณีที่ท่านไม่สามารถเชื่อมต่อกับผู้ใด รวมทั้งไม่สามารถ Ping เบอร์ IP Address ของเครื่องท่านเอง ให้ตรวจสอบดู Physical Address ซึ่งก็คือ Address ของ LAN Card หาก ไม่ปรากฏว่ามี ก็แสดงว่า LAN Card ไม่ทำงาน หรือ ไม่พร้อมที่จะทำงาน และอาจเป็นเพราะว่า ยังติดตั้ง Driver ให้กับมัน ไม่เรียบร้อย
   2. เลขหมาย IP ของเครื่องนี้ พร้อมด้วยเลขหมาย Sub Netmask รวมทั้งเลขหมายของ Gateway - ปกติ หากเครื่องของท่าน มีการเชื่อมต่อกับ เครือข่ายอื่นๆ ผ่าน Router ท่านสามารถตรวจสอบดู ค่า Default Gateway ซึ่งจะต้องปรากฏ อยู่บนหน้าจอ เนื่องจากค่านี้ แสดงว่า ท่านเชื่อมต่อกับเครือข่ายอื่นๆ ผ่าน Router และค่านี้ก็คือค่า เบอร์ IP Address ของ Router นั่นเอง นอกจากนี้ ท่านยังสามารถตรวจสอบดูได้ว่า เครือข่ายของท่านได้รับการจัดแบ่ง Subnetหรือไม่ โดยการดูที่ ค่า Subnet mask หากเป็นเลขที่ลงท้ายด้วย "0" เช่น 255.255.255.0 ก็แสดงว่า เครือข่าที่ท่านอาศัยอยู่ ไม่ได้ มี Subnet แต่อย่างใด แต่หากมีค่าอื่น เช่น 255.255.255.224 แสดงว่า เครือข่ายของท่าน ได้รับการจัดแบ่ง Subnet เป็นที่เรียบร้อย
   3. ในกรณีที่ท่านไม่สามารถติดต่อ หรือ Ping กับเครื่องคอมพิวเตอร์ใดๆ แม้แต่ตนเอง ท่านอาจต้องตรวจสอบ ดูเบอร์ IP Address ของเครื่อง หาก ตรวจไม่พบ ใน IPCONNFIG/all ให้ท่านตรวจสอบดูว่า DHCP Server Enable อยู่หรือไม่ หาก ไม่แสดงว่า มีความเป็นไปได้ ที่ท่านยังไม่ได้จัดตั้งเลขหมาย IP Address แต่หาก เครื่องอื่นๆ ใช้ DHCP Server เพื่อแจก IP อีกทั้ง DHCP ปรากฏในหน้าจอ IPCONFIG/all เป็น Enable อยู่ ก็แสดงว่า การที่ท่านไม่ได้รับเบอร์ IP Address อาจเป็นไปได้ที่ โปรโตคอลที่ชื่อว่า BOOTP ไม่สามารถติดต่อกับ DHCP Server ด้วยเหตุผลใดเหตุผลหนึ่ง ให้ท่านลอง Remove และReinstall TCP/IP ใหม่ และเพื่อให้แน่ใจว่า เครื่องของท่านทำงานปกติ ท่านอาจใช้ Network Monitor เพื่อตรวจจับดูการสื่อสารระหว่างท่านกับ DHCP Server นอกจากนี้ ยังมีความเป็นไปได้ที่ เครื่องของท่าน อยู่นอกระยะของ IP address ที่กำหนดไว้ใน DHCP Server ซึ่งหมายความว่า IP Address อาจหมดโควต้า แล้วก็ได้

   4. ในกรณีที่ท่านไม่สามารถติดต่อกับ เครือข่ายเพื่อนบ้าน โดยผ่านทาง Router ท่านก็สามารถใช้ IPCONFIG/all เพื่อตรวจสอบดูว่า Router ทำงานอยู่หรือไม่ โดยการ Ping ไปที่ เบอร์ Default Gateway และเพื่อการพิสูจน์ว่า เบอร์ Default Gateway ถูกต้องหรือไม่ ได้อีกด้วย
   5. ยิ่งไปกว่านั้น เลขหมาย IP ของ DNS Server จะช่วยให้ท่านสามารถเข้าถึง ปัญหา ว่า เพราะเหตุใด ท่านไม่สามารถ Ping ชื่อคอมพิวเตอร์ บนเครือข่าย ในเมื่อท่านติดตั้ง DNS Server ไว้ ท่านก็สามารถตรวจสอบความพร้อมของ DNS Server บนเครื่องคอมพิวเตอร์ที่ติดตั้ง Linux และ UNIX ท่านสามารถใช้คำสั่ง IPCONFIG – a
การใช้คำสั่ง Netstat 
    Netstat เป็นคำสั่งที่ดีที่สุด คำสั่งหนึ่ง ที่ใช้เพื่อ Troubleshooting หาจุดบกพร่องในระดับ ชั้นเครือข่ายและ Transport ด้วยคำสั่งนี้ Netstat จะแสดงสถิติการทำงานของเครือข่าย และโปรโตคอลบนเครื่องของท่านได้อย่างชาญฉลาด และด้วยความรู้พื้นฐานของ TCP/IP ท่านสามารถใช้ Netstat เพื่อตรวจสอบการทำงานของโปรโตคอลต่างๆ ดังต่อไปนี้ 
 -โปรโตคอล IP
 -โปรโตคอล ICMP
 -โปรโตคอล UDP
การใช้ Netstat เพื่อแสดงสถานะ การทำงานของ IP 
  เมื่อใดที่ท่านต้องการดูสถานะ การทำงานของ IP ในกรณีที่ท่านสงสัยว่า เป็นปัญหาในระดับชั้น Network ท่านสามารถใช้คำสั่ง Netstat -s - p ip จะปรากฏ 
สมมติเครื่องคอมพิวเตอร์นี้ ได้รับ Packet เข้ามาจำนวน โดยมีข้อผิดพลาดเกี่ยวกับ Address เพียง เท่านั้น แต่นั่นยังไม่สำคัญเท่ากับ การระวังไม่ให้มีความผิดพลาดเกิดขึ้นที่ Header ของ IP Packet ซึ่งปกติจะต้องมีค่าเป็น ศูนย์ นั่นคือไม่มีความผิดพลาด นอกจากนี้ ในภาพ ยังแสดงให้เห็นว่า Received Packet Discarded มีค่าเป็นศูนย์ ซึ่งแสดงว่า ไม่มีปัญหาเกี่ยวกับ Packet เกิดขึ้น โดย Packet ที่ได้รับเข้ามาทั้งหมด ได้ถูกจัดส่งขึ้นไปที่ระดับชั้น Transportโดยดูจากหัวข้อ Received packet Delivered มีค่าเท่ากับ Packet Received

   นอกจากนี้ หัวข้ออื่นๆ ยังแสดงให้เห็นถึงการทำงานของ IP ในระดับชั้น Network ซึ่งในที่นี้ ยังไม่ขอกล่าวถึง เนื่องจากต้องการเน้นเรื่องTroubleshooting มากกว่า 
การใช้ Netstat เพื่อตรวจสอบสถานะ การทำงานของโปรโตคอล UDP 
โปรโตคอล UDP มีบทบาทการทำงานที่สำคัญ จะเป็นรองก็แต่ TCP เท่านั้น การทำงานของ UDP บนเครือข่ายมีมากมายหลายประการ เช่น การใช้ NetBIOSเพื่อแจ้งชื่อ รวมทั้งเบอร์ ให้แก่คอมพิวเตอร์ที่อยู่ใน Workgroup เดียวกัน หรือเครือข่ายเดียวกัน ต่างก็ใช้ UDP เป็นผู้ ส่งข่าวสารภายใต้ TCP/IP นอกจากนี้ การสื่อสารที่เกี่ยวข้องกับการขอและแจก IP แก่บรรดาเครื่องคอมพิวเตอร์บนเครือข่าย ต่างก็ใช้ UDP เช่นเดียวกัน
   ท่านสามารถใช้คำสั่ง Netstat - s -p udp เพื่อตรวจสอบข่าวสารดังนี้
Netstat สามารถแสดงให้เห็นปริมาณของ Packet หรือ Datagram ที่ได้รับว่ามีปริมาณ เท่าใด รวมทั้งมีข้อผิดพลาดอย่างไร ท่านสามารถใช้คำสั่งนี้ ในกรณีที่ท่านไม่ได้รับการแจก IP Address ท่านสามารถใช้คำสั่งนี้ตรวจสอบดู ว่า มีการติดต่อสื่อสารระหว่างท่านกับ DHCP Server นอกจากนี้ ท่านยังสามารถใช้คำสั่งนี้เพื่อตรวจสอบดู ในกรณีที่ ท่านไม่สามารถ Browse ดูรายชื่อคอมพิวเตอร์บน Workgroup เดียวกัน ซึ่งอาจเกิดจาก UDP หรือ NetBIOS ทำงานบกพร่อง อย่างใดอย่างหนึ่ง
การใช้คำสั่ง Netstat เพื่อตรวจสอบดู หมายเลข Port รวมทั้งเครื่องคอมพิวเตอร์ต่างๆ ที่ติดต่อเข้ามา รวมทั้งสถานะ การทำงาน ของ Port และระหว่างคอมพิวเตอร์ด้วยกัน 
   ในกรณีที่มีผู้ที่อยู่ในเครือข่ายเดียวกัน แจ้งว่าไม่สามารถติดต่อกับเครื่องของท่านได้ ท่านสามารถใช้คำสั่ง Netstat - a -n เพื่อตรวจสอบดูชื่อของคอมพิวเตอร์หรือ IP Address ที่ติดต่อเข้ามา รวมทั้งสถานะของการเชื่อมต่อ คราวนี้ เรามาสมมตว่า ได้ใช้ Netstat และเห็นชื่อของคอมพิวเตอร์ ที่กำลังติดต่อเข้ามาแต่สำเร็จ ปรากฏขึ้นที่หน้าจอ ท่านสามารถใช้ หน้าจอนี้ เพื่อดูว่า สถานะ การเชื่อมต่อเป็นอย่างไรหากเชื่อมต่อได้จริง ท่านควรเห็น State มีค่าเป็นEstablished หากติดต่อไม่ได้ ท่านอาจเห็น State เป็น Listening หรือ Time_Wait อย่างใดอย่างหนึ่ง การเกิด State ในลักษณะนี้ ให้ท่านสังเกตดู เลขหมายของ Port ที่อยู่ท้ายของ IP Address ที่ติดต่อเข้ามา (หัวข้อ Foreign Address) และดูหมายเลข Port ที่ Local Address ซึ่งมีความเป็นไปได้ที่ Port ไม่ได้เปิดไว้ ให้บริการ หรือการสถาปนาการเชื่อมต่อ ระหว่างเครื่องนี้ กับคอมพิวเตอร์เครื่องอื่น ไม่บรรลุความสำเร็จ
   สำหรับเครื่องที่ติดตั้ง Linux หรือ UNIX ให้ใช้ Netstat - l แทน 
ข้อผิดพลาดเกิดขึ้น มีหลายประการ จากการติดต่อกันด้วย โปรโตคอล TCP มีรายละเอียดที่น่าสนใจ ดังนี้
  -Failed Connection Attempts - เป็นการบ่งบอกให้เห็นว่า มีความพยายามของคอมพิวเตอร์บนเครือข่าย หรือเครื่องของเราเอง ในอันที่จะสถาปนาการเชื่อมต่อ แต่ไม่ประสบความสำเร็จ ครั้ง ซึ่งในครั้งนั้น อาจเป็น เครื่องคอมพิวเตอร์ที่บ่นว่าไม่สามารถติดต่อกับท่านก็เป็นได้
   -Reset Connection - เป็นการบ่งบอกให้เห็นว่า มีการปฏิเสธการเข้ามาขอใช้บริการจากคอมพิวเตอร์เครื่องอื่น หรือท่านพยายามที่จะสถาปนาการเชื่อมต่อ และขอใช้บริการ Services บางรายการจาก Host ปลายทาง แต่ได้รับการปฏิเสธ
 -ในกรณีที่ท่านพยายามจะ Down Load ข้อมูลข่าวสารจาก Host ปลายทาง แต่หยุดค้างระหว่างทาง ท่านสามารถตรวจสอบดูค่า Segment Send และ Segment
   -Received โดยใช้คำสั่ง netstat - s -n 5 -p tcp และสังเกตว่า ทุกครั้งที่หน้าจอเปลี่ยนแปลง ค่าของ Segment Sent จะเพิ่มขึ้นเล็กน้อย ส่วนค่า Segment Received จะเพิ่มขึ้นมาก หากไม่เป็นเช่นนั้น เช่น ค่า Segment Sent เพิ่มขึ้น แต่ค่า Segment Received มีค่าคงที่แสดงว่า Host ปลายทางไม่ทำงาน และถ้าหากว่า ค่า Segment Sent ไม่เพิ่มขึ้น แสดงว่า เครื่องของท่านมีปัญหาอย่างแน่นอน
 -นอกจากนี้ ให้สังเกตดูที่สถานการณ์เชื่อมต่อ ควรเป็น Established
การใช้คำสั่ง Netstat เพื่อตรวจสอบดู การทำงานของโปรโตคอล ICMP
ICMP เป็นโปรโตคอลที่ถูกนำมาใช้ประโยชน์มากมายหลายประการ เช่น การนำพาข่าวสารเกี่ยวกับสถานการณ์ทำงานของ Host กับ Host Router กับ Hostรวมทั้ง Router กับ Router ด้วยกัน โดยมีการใช้ ICMP ที่อยู่ภายในเครื่องหรือ Router ทำหน้าที่แจ้งปัญหาต่างๆที่เกิดขึ้น กลับไปยังต้นทาง ที่ส่งข่าวสาร เพื่อPing ดูกัน นอกเหนือไปจากการรายงานความผิดพลาดแล้ว ยังมีการนำเอา ICMP มาใช้งานเพื่อตรวจสอบและร้องขอข้อมูลจากเครื่องลูกข่ายปลายทาง ที่กำหนดไว้ได้ เช่นเดียวกัน
ต่อไปนี้ เป็นประเภทการรายงานความผิดพลาดโดย ICMP ดังนี้
ท่านจะเห็นว่า การใช้คำสั่ง Netstat -s -p icmp จะสามารถรายงานสถานการณ์ทำงานของ เครือข่าย หรือ เครื่องลูกข่าย รวมทั้ง Router ได้ ตัวอย่าง เช่นDestination Unreachable จำนวน ครั้ง รวมทั้งจำนวนครั้งของ Datagram ที่ใช้เวลาในการเดินทาง ไปหรือกลับ มากเกินไป ซึ่งเป็นการบ่งบอกถึงระยะทาง รวมทั้งปัญหา Delay บนเครือข่ายได้เป็นอย่างดี นอกจากท่านสามารถใช้ Netstat เพื่อตรวจสอบสถานการณ์ทำงานของโปรโตคอลต่างๆ แล้ว ท่านยังสามารถใช้เพื่อตรวจสอบดู Routing Table ของเครื่องได้อีกด้วย
แสดงข้อมูลข่าวสารเกี่ยวกับ Routing Table โดย คำสั่ง Netstat -r
แสดงข้อมูลข่าวสารเกี่ยวกับ เส้นทาง ที่ คอมพิวเตอร์เครื่องนี้ สามารถมองเห็น เช่น ระยะทางการสื่อสารระหว่าง เครื่องนี้ กับเครื่องที่ใช้ IP เบอร์203.149.35.231 อยู่ห่างกันมาถึง 50 Hops เป็นต้น อย่างไรก็ดี การใช้คำสั่ง Netstat -r ไม่ได้ให้ข้อมูลเกี่ยวกับ การ Troubleshooting ระบบเครือข่าย มากนัก ดังนั้น จึงไม่เน้นคำสั่งนี้
การใช้คำสั่ง Tracert 
  คำสั่ง Tracert เป็นคำสั่งที่จะช่วยให้ท่านสามารถ ติดตามดูเส้นทางการเชื่อมต่อของ Router ไปยังจุดหมายปลายทาง ท่านสามารถใช้คำสั่ง Tracert เพื่อประเมินว่า Router หรือการเชื่อมต่อบนเส้นทางที่ทอดสู่คอมพิวเตอร์ปลายทางนั้น เกิดปัญหาติดขัดหรือไม่ 
      การทำงานของ Tracert ได้แก่การ ส่งชุดของ ICMP Echo Request ออกไป ในการร้องขอแต่ละครั้งจะมีการเพิ่มค่า TTL เป็น ค่าเสมอ เมื่อ Router ตัวแรกได้รับข่าวสาร มันจะลดค่า TTL ลงไป ค่า และเมื่อใดที่ค่า TTL บนข่าวสารที่ร้องขอเข้ามาเหลือค่า เป็น ก็หมายความว่าค่า TTL ของ Router จะมีค่าเป็นศูนย์ นั่นคือ จะเกิดปัญหาที่เรียกว่า "Time Exceed " ในลักษณะของข่าวสารปรากฏที่หน้าจอ ของเครื่องคอมพิวเตอร์ที่ร้องขอไป 
สมมติลำดับเลขหมาย Hop m 18 และ 19 มีรูปดอกจัน ปรากฏอยู่ มีความหมายว่า Hop ดังกล่าว มีค่า Delay มากเกินไป หรือเกิดปัญหาติดขัด และนี่เป็นสาเหตุที่ทำให้เครื่องนี้ ติดต่อกับเครื่องปลายทางได้ช้ามาก