หน้าเว็บ

วันอังคารที่ 23 ธันวาคม พ.ศ. 2557

วิธีการปิดกั้น Unknown Unicast , DHCP Snooping กับ Dynamic ARP Inspection

วิธีการปิดกั้น Unknown Unicast
https://www.facebook.com/virintr/photos/pcb.427982014012340/427981194012422/?type=1

เมื่อใดที่ Switch ได้รับเฟรมข้อมูลซึ่งระบุจุดหมายปลายทางที่ไม่ได้มีอยู่ในตาราง MAC Address ของ Switch แล้ว ตัว Switch จะมีพฤติกรรม ส่งกระจายออกไปยังทุกๆ Port ในลักษณะท่วมท้นไปทุกๆ Port ที่มีอยู่ รวมทั้ง Port อันเป็นเส้นทางที่เชื่อมต่อกับ Switch ตัวอื่นๆ และทั้งหมดที่เชื่อมต่อกัน ลักษณะเช่นนี้ จะส่งผลเสียต่อเครือข่าย เนื่องจากจะมีปริมาณของเฟรมข้อมูลที่ไม่จำเป็นเพิ่มขึ้น รบกวนต่อการใช้แบนด์วิธของเครือข่าย
ลักษณะเช่นนี้ แม้จะมีพฤติกรรมที่คล้ายกับการทำงานของ Broadcast แต่ข้อเท็จจริง เป็นเพียงการส่ง เฟรมแบบ Unicast (เฟรมที่ระบุผู้รับโดยตรง ต่างกันตรงที่เฟรมของ Broadcast ไม่ระบุผู้รับโดยตรง)
เพื่อที่จะหลีกเลี่ยงปัญหาดังกล่าว ท่านสามารถจัดคอนฟิกบน Switch ของ Cisco เพื่อให้สามารถปิดกั้นกระแสจราจร ประเภท Unicast หรือ Multicast ซึ่งปลายทาง เป็นผู้รับที่ไม่มีตัวตน และเหตุการณ์ในลักษณะนี้ สามารถเกิดขึ้นได้ตามปกติ ในกรณีที่เครื่องคอมพิวเตอร์ที่ท่านติดต่อด้วย เกิดปิดเครื่องและออกจากเครือข่ายไป หรือด้วยเหตุผลเครื่องมีปัญหา นอกจากนี้ ยังมีความเป็นไปได้ที่จะเกิดการคุกคามเครือข่าย ด้วยหวังผลว่าจะทำให้เครือข่ายเต็มไปด้วยกระแสจราจร ที่ไม่จำเป็นและส่งผลให้ประสิทธิภาพลดลง การติดตั้งกระบวนการปิดกั้นดังกล่าว สามารถทำได้โดยกำหนด Port ที่ต้องการจะปิดกั้นการจราจรดังกล่าว ด้วยคำสั่ง ดังนี้
Switch(config-if)# switchport block unicast
Switch(config-if)# switchport block multicast
มีผู้สงสัยว่า การปิดกั้น Multicast เช่นนี้อาจส่งผลต่อการทำงานของ IGMP Snooping แต่มีข้อเท็จจริงสำหรับ Switch รุ่น Catalyst 3560 ระบุไว้ว่า “มีเพียง กระแสจราจรของ Multicast ที่ทำงานภายใน Layer 2 เท่านั้นที่จะถูกปิดกั้น แต่ Packet แบบ Multicast ที่ประกอบด้วยข่าวสาร IPv4 และ IPv6 เท่านั้น ที่จะไม่ถูกปิดกั้น จากการทดสอบพบว่า ถึงแม้ว่าในระบบจะไม่มีการทำงานของ IGMP Snooping ก็ตาม Multicast packet ที่ทำงานบน IPv4 หรือ IPv6 ไม่ได้ถูกปิดกั้นแต่อย่างไร
***********************************************
DHCP Snooping กับ Dynamic ARP Inspection
DHCP Snooping เป็นคุณลักษณะการทำงานของ Catalyst Switch ที่จะตรวจสอบกระแสจราจรของ DHCP ที่วิ่งบน Switch ในระดับ Layer 2 และติดตามดูว่าไอพีแอดเดรสใดที่ DHCP Server แจกจ่ายให้กับเครื่องคอมพิวเตอร์ของ Client และแจกไปให้ Client บน Port ใดบ้าง ข่าวสารนี้ ให้ประโยชน์ต่อการ Troubleshooting เป็นอย่างมาก แต่ทั้งหมดนี้ จะสามารถทำงานได้อย่างสมบูรณ์ก็ต่อเมื่อมีการใช้ IP Source Guard และ Dynamic ARP Inspection
วิธีการติดตั้ง
ประการแรก ท่านจะต้อง Enable การทำงานของ DHCP Snooping โดยให้ Enable m Global Configuration Mode รวมทั้งในแต่ละ VLAN ที่มีอยู่
Switch(config)# ip dhcp snooping
Switch(config)# ip dhcp snooping vlan 10
Switch(config)# ^Z
หลังจากติดตั้งแล้ว ท่านสามารถใช้คำสั่ง show ip dhcp snooping เพื่อดูว่าค่าที่ท่านจัดตั้งนั้น เข้าไปสู่ระบบเรียบร้อยแล้วหรือยัง ?
Switch# show ip dhcp snooping
Switch DHCP snooping is enabled
DHCP snooping is configured on following VLANs: 10
DHCP snooping is operational on following VLANs: 10
DHCP snooping is configured on the following L3 Interfaces:
Insertion of option 82 is enabled
circuit-id format: vlan-mod-port
remote-id format: MAC
Option 82 on untrusted port is not allowed
Verification of hwaddr field is enabled
Verification of giaddr field is enabled
DHCP snooping trust/rate is configured on the following Interfaces:
Interface Trusted Rate limit (pps)
------------------------ ------- ----------------
จากตัวอย่างนี้ Switch ที่ใช้เป็นแบบ Multilayer Switch (Switch ที่ทำงานบน Layer 2/3) ทำหน้าที่ถ่ยทอดการร้องขอ DHCP จาก Client ไปที่ DHCP Server บนเครือข่าย ซึ่งพฤติกรรมการทำงานเช่นนี้ ทำได้โดยเพิ่มคำสั่ง ip helper-address ภายใต้ Access VLAN interface อย่างไรก็ตาม หาก Switch ที่ใช้ทำงานในระดับ Layer 2 เท่านั้น ท่านอาจต้องกำหนดให้ อินเตอรเฟสของ Uplink ให้เป็น Trusted Mode โดยการกำหนดคำสั่ง ip dhcp snooping trust ให้กับอินเตอรเฟสที่ทำงานในระดับ layer 2 คำสั่งนี้จะเป็นการบอกให้ Switch รู้ว่า การตอบสนองการขอรับไอพีแอดเดรสจาก Client จะต้องเกิดขึ้นที่ Port นี้
Client ที่ทำงานบนเครือข่าย จะได้รับไอพีแอดเดรสจาก Port ที่ถูกกำหนดให้เป็น Trust นอกจากนี้ หมายเลขไอพีแอเดรส รวมทั้ง DHCP Client จะไปปรากฏบนตาราง DHCP Snooping Binding Table บน Switch ดังนี้
Switch# show ip dhcp snooping binding
MacAddress IpAddress Lease(sec) Type VLAN Interface
--------------- --------------- ---------- ------------- ---- --------
00:19:AA:7D:E6:88 192.168.10.2 86250 dhcp-snooping 10 FastEthernet0/3
Total number of bindings: 1
ต่อไป ท่านจะต้อง Enable dynamic ARP inspection ให้กับ VLAN (เมื่อมีการ Enable ให้กับหลายๆ VLAN ท่านสามารถกำหนดพิกัด (Range) ของ VLAN ได้)
Switch(config)# ip arp inspection vlan 10
Switch(config)# ^Z
Switch# show ip arp inspection
Source Mac Validation : Disabled
Destination Mac Validation : Disabled
IP Address Validation : Disabled
Vlan Configuration Operation ACL Match Static ACL
---- ------------- --------- --------- ----------
10 Enabled Active
Vlan ACL Logging DHCP Logging Probe Logging
---- ----------- ------------ -------------
10 Deny Deny Off
Vlan Forwarded Dropped DHCP Drops ACL Drops
---- --------- ------- ---------- ---------
10 0 0 0 0
Vlan DHCP Permits ACL Permits Probe Permits Source MAC Failures
---- ------------ ----------- ------------- -------------------
10 0 0 0 0
Vlan Dest MAC Failures IP Validation Failures Invalid Protocol Data
---- ----------------- ---------------------- ---------------------
10 0 0 0
โปรดสังเกตจากข้อมูล Output จากตัวอย่างข้างบน จะเห็นว่า MAC Address ต้นทาง MAC Address ปลายทาง ได้ระบุว่า Disable ท่านสามารถ Enable กระบวนการตรวจสอบหลายๆแบบได้ ด้วยคำสั่ง ip arp inspection เพื่อให้ Switch สามารถดำเนินการตรวจสอบ MAC Address ต้นทางและปลายทาง รวมถึงไอพีแอดเดรส
ตอนนี้ สมมตว่า ผู้บุกรุกมีการเชื่อมต่อเข้ามาที่ VLAN 10 บน FastEthernet0/5 และเริ่มส่ง Gratuitous ARP Reply (Gratuitous ARP ถูกนำมาใช้เมื่อคอมพิวเตอร์ต้องการอัพเดทข้อมูล ARP Table ในเครื่องคอมพิวเตอร์อื่น มีการตรวจสอบไอพีแอเดรสที่ซ้ำกัน) ออกมา ตัว Switch จะตรวจสอบ ARP Packet เหล่านี้ และไม่สามารถตรวจพบในตาราง DHCP Snooping สำหรับแอดเดรสต้นทาง 192.168.10.1 บน Port ของ FastEthernet0/5 ดังนั้นจะดำเนินการละทิ้ง Packet เหล่านี้ จากนั้นจะแสดงข่าวสาร ดังนี้
%SW_DAI-4-DHCP_SNOOPING_DENY: 1 Invalid ARPs (Res) on Fa0/5, vlan 10.
([0013.6050.acf4/192.168.10.1/ffff.ffff.ffff/192.168.10.1/05:37:31UTC Mon Mar 1 1993])
ท่านสามารถแสดงดูจำนวนของ Packet ที่ถูกละทิ้งไปด้วยคำสั่งต่อไปนี้
Switch# show ip arp inspection
Source Mac Validation : Disabled
Destination Mac Validation : Disabled
IP Address Validation : Disabled
Vlan Configuration Operation ACL Match Static ACL
---- ------------- --------- --------- ----------
10 Enabled Active
Vlan ACL Logging DHCP Logging Probe Logging
---- ----------- ------------ -------------
10 Deny Deny Off
Vlan Forwarded Dropped DHCP Drops ACL Drops
---- --------- ------- ---------- ---------
10 22 2 2 0
Vlan DHCP Permits ACL Permits Probe Permits Source MAC Failures
---- ------------ ----------- ------------- -------------------
10 22 0 0 0
Vlan Dest MAC Failures IP Validation Failures Invalid Protocol Data
---- ----------------- ---------------------- ---------------------
10 0 0 0
ข้อควรระวัง
หาก DHCP Server ถูกติดตั้งบนเราเตอร์และเชื่อมต่อเข้ากับ Switch ระดับ Layer 2 ท่านจะได้เห็นข่าวสารเกี่ยวกับความผิดพลาดเกิดขึ้น หากท่านติดตั้งคำสั่ง Debug บนการทำงานของ DHCP Server คำสั่งคือ debug ip dhcp server packet
DHCPD: inconsistent relay information.
DHCPD: relay information option exists, but giaddr is zero.

ไม่มีความคิดเห็น:

แสดงความคิดเห็น