IPv6: การกำหนดคุณสมบัติใน Cisco C6500

From Prakai Nadee

บทนำ

การขยายตัวของการพัฒนาใช้งาน IPv6 ในประเทศไทย เป็นสาเหตุที่หลายหน่วยงาน รวมถึงสถาบันการศึกษา จำเป็นต้องนำ IPv6 ไปติดตั้งใช้งาน โดยส่วนของการดำเนินการจะแบ่งเป็น 3 หลัก ประกอบด้วย ส่วนของบริการหรือแม่ข่าย (Service or Server) ส่วนของโครงข่าย (Infrastructure) และส่วนของผู้ใช้ (User) การนำ IPv6 ไปกำหนดคุณสมบัติให้อุปกรณ์ของแต่ละส่วนจะมีความต่างกัน ทั้งขอบเขตตามหน้าที่การทำงานและวิธีการกำหนดคุณสมบัติ

การกำหนดคุณสมบัติ IPv6 ให้กับอุปกรณ์ Cisco C6500 ที่จะกล่าวในบทความนี้ เป็นการกำหนดคุณสมบัติในส่วนของโครงข่าย ทั้งเพื่อให้ตัว Cisco C6500 ใช้งาน IPv6 และส่วนที่จะเป็นโครงข่ายสำหรับให้บริการส่งต่อข้อมูล สามารถนำวิธีการนี้ไปใช้ได้กับอุปกรณ์ของ Cisco รุ่นอื่นได้ เช่น C4500 C3700 เป็นต้น

รายละเอียดของ Cisco C5600 คือ

Cisco IOS Software, ...., Version 15.1..., ....
Cisco WS-C6509-E (M8572) processor (revision ) with 1785856K/262144K bytes of memory.

รายละเอียดของ Cisco C4500 คือ

Cisco IOS Software, IOS-XE Software, Catalyst 4500 L3 Switch Software (....), Version 03.03.02.XO .....
Cisco WS-C4506-E (P5040) processor (revision 2) with 4194304K bytes of physical memory.

รายละเอียดของ Cisco C3700 คือ

Cisco IOS Software, C3750E Software (....), Version 15.2...., .....
Cisco WS-C3750X-24S (PowerPC405) processor (revision M0) with 524288K bytes of memory.

โครงสร้างโครงข่าย

จากตัวอย่างที่จะกล่าวถึงในหัวข้อถัดไป เป็นการกำหนดคุณสมบัติตามโครงสร้างการเชื่อมต่อดังภาพนี้

{ INTERNET }
     |
+----+-----+
|          |     +---[DNSv6: 2001:303:CAFE::121, 2001:303:CAFE::111]
| Firewall +-----+
|          |     +---[DHCPv6: 2001:303:CAFE::121]
+----+-----+
     |2001:303:CAFE:701::1/64, +RA
     |
     |
     |G0/1-(VLAN100): 2001:303:CAFE:701::2/64 or autoconfig, ra suppress
+----+----+
|         |
|  C6500  +-G0/2-(VLAN200): 2001:303:CAFE:702::1/64, Stateless --- {CLIENTS}
|         |
+----+----+
     |G0/3-(VLAN300): 2001:303:CAFE:703::1/64, Stateful (DHCP relay) 
     |
     +---- {CLIENTS}

กำหนดคุณสมบัติพื้นฐาน

คุณสมบัติพื้นฐานเกี่ยวกับ IPv6 ของ Cisco C6500 ส่วนใหญ่จะเกิดจากการกำหนดคุณสมบัติในส่วนอื่น เช่น การกำหนดคุณสมบัติให้ interface แต่มีการกำหนดคุณมบัติบางอย่างที่ไม่ขึ้นอยู่กับ interface เช่น การใช้บริการ DNS การกำหนดคุณสมบัติเพื่อให้อุปกรณ์สามารถใช้บริการ DNS ได้ จะอาศัยบริการจากการกำหนดคุณสมบัติเดียวกับ IPv4 การกำหนดคุณสมบัตินี้เป็นส่วนเสริม (Optional) ไม่จำเป็นต้องกำหนดคุณสมบัติก็ได้ โดยอุปกรณ์ยังคงทำงานและให้บริการได้ปกติ

ตัวอย่างการกำหนดคุณสมบัติ DNS

!
ip domain-name krc.rmuti.ac.th
ip name-server 2001:303:cafe::121 2001:303:cafe::111
ip domain-lookup
!

กำหนดคุณสมบัติให้ interface

การกำหนดคุณสมบัติให้ interface ของ C6500 แยกเป็น 2 ด้าน คือ ด้านที่เป็นอัพลิงค์ หรือด้านที่เชื่อมต่อไปยังเครือข่ายส่วนบน และด้านดาวน์ลิงค์ หรือด่านที่เชื่อมต่อไปยังเครือข่ายส่วนล่างหรือด้านผู้ใช้

interface ด้านอัพลิงค์

จากภาพโครงข่าย interface ด้านอัพลิงค์ของ C6500 คือ G0/0/1-(VLAN100) เชื่อมต่อไปยัง Firwall เพื่อสื่อสารสู่เครือข่ายภายนอก หรือเครือข่าย INTERNET สิ่งที่ต้องดำเนินการและเกี่ยวข้องกับ interface นี้ ประกอบด้วย 3 การดำเนินการ คือ การกำหนด IPv6 address การละเว้นการส่ง RA (Router Advertisement) และการกำหนด Default routing

ตัวอย่างการกำหนดคุณสมบัติโดยให้ interface รับ RA จาก Firewall

!
ipv6 unicast-routing
!
interface GigabitEthernet0/1
 switchport
 switchport access vlan 100
 switchport mode access
!
interface Vlan100
 description Uplink to Public Network via Firewall
 ipv6 address autoconfig
 ipv6 enable
 ipv6 nd ra suppress
!

โดยอุปกรณ์จะรับค่า prefix (2001:303:CAFE:701::/64) จากการส่ง RA ของ Firewall มาประกอบการสร้าง IPv6 address ขึ้นเอง หมายเลข IPv6 address ที่ได้จะมีรูปแบบเป็น 2001:303:CAFE:701:????:????:????:????/64

แต่หากต้องการกำหนด IPv6 address เอง สามารถดำเนินการได้ดังตัวอย่างนี้

!
ipv6 unicast-routing
!
interface GigabitEthernet0/1
 switchport
 switchport access vlan 100
 switchport mode access
!
interface Vlan100
 description Uplink to Public Network via Firewall
 ipv6 address 2001:303:CAFE:701::2/64
 ipv6 enable
 ipv6 nd ra suppress
!

คำสั่ง ipv6 nd ra suppress คือการห้ามไม่ให้อุปกรณ์ส่ง RA ออกไปยังเครือข่ายที่ต่อกับ interface นี้

การกำหนด Default routing ให้อุปกรณ์ สามารถกำหนดได้ดังนี้

!
ipv6 route ::/0 2001:303:CAFE:701::1
!

หรือกำหนด Default routing โดยตั้งค่า Administrative distance ไว้สูงกว่า Routing protocol อื่น เผื่อให้ Routing protocol เป็นผู้กำหนด Default routing ได้

!
ipv6 route ::/0 2001:303:CAFE:701::1 254
!

interface ด้านดาวน์ลิงค์แบบ Stateless

จากภาพโครงข่าย interface ด้านดาวน์ลิงค์แบบ Stateless ของ C6500 คือ G0/0/2-(VLAN200) จะเชื่อมต่อไปยังเครือข่ายภายในหรือเครื่องของผู้ใช้

คำว่า Stateless โดยย่อแล้วหมายถึงการที่เครื่องของผู้ใช้กำหนดสร้างและกำหนดค่า IPv6 address ด้วยตนเอง หรือ Stateless address autoconfiguration (SLAAC) ไม่มีอุปกรณ์อื่นใดจดจำสถานะการนำ IPv6 address ที่เครื่องผู้ใช้นั้นนำไปติดตั้งและใช้งาน

สิ่งที่ต้องดำเนินการและเกี่ยวข้องกับ interface นี้ ประกอบด้วย 2 การดำเนินการ คือ การกำหนด IPv6 address และการส่งคุณสมบัติต่างๆ ด้วยวิธีการของ RA (Router Advertisement)

ตัวอย่างการกำหนดคุณสมบัติโดยให้ interface เพื่อให้ผู้ใช้ได้รับ IPv6 address แบบ Stateless

!
ipv6 unicast-routing
!
ipv6 dhcp pool Only_DNS_Servers
 dns-server 2001:303:CAFE::121
 dns-server 2001:303:CAFE::111
 domain-name sub.rmuti.ac.th
!
interface GigabitEthernet0/2
 switchport
 switchport access vlan 200
 switchport mode access
!
interface Vlan200
 description Downlink to Clients with Stateless address assignment
 ipv6 address 2001:303:CAFE:702::1/64
 ipv6 nd other-config-flag
 ipv6 nd router-preference High
 ipv6 dhcp server Only_DNS_Servers
!

จากตัวอย่าง เป็นการกำหนดคุณสมบัติโดยให้ Cisco C6500 ส่ง RA ไปยังในเครือข่ายที่ต่อกับ interface เพื่อให้เครื่องผู้ใช้นำไปสร้างและใช้งาน IPv6 ด้วยตัวเอง โดยค่าที่ RA ส่งออกไปประกอบด้วย prefix (2001:303:CAFE:702::/64) และคุณสมบัติเกี่ยวกับ DNS server

คำสั่ง ipv6 nd other-config-flag คือการประกาศให้เครื่องผู้ใช้กำหนดหมายเลข IPv6 address จากวิธีการของ SLAAC แต่ร้องขอคุณสมบัติอื่นด้วยวิธีการของ DHCP เช่น ค่าที่เกียวข้องกับ DNS ซึ่งสัมพันธ์กับคำสั่ง ipv6 dhcp server Only_DNS_Servers และชุดคำสั่ง ipv6 dhcp pool Only_DNS_Servers

ทั้งนี้ หากเครือข่ายเป็นแบบ Dual-stack และเครื่องผู้ใช้มีค่าที่เกี่ยวข้องกับ DNS จาก IPv4 อยู่แล้ว เครื่องลูกข่ายจะใช้งาน DNS ได้ผ่าน IPv4 โดยไม่ต้องกำหนดด้าน IPv6 ก็ได้

interface ด้านดาวน์ลิงค์แบบ Stateful

จากภาพโครงข่าย interface ด้านดาวน์ลิงค์แบบ Stateful ของ C6500 คือ G0/0/3-(VLAN300) จะเชื่อมต่อไปยังเครือข่ายภายในหรือเครื่องของผู้ใช้

คำว่า Stateful โดยย่อแล้วหมายถึงมีเครื่องที่ทำหน้าที่จดจำสถานะการนำ IPv6 address ที่เครื่องผู้ใช้นั้นนำไปใช้งาน ในที่นี้หมายถึงแม่ข่าย DHCP server นั่นเอง

สิ่งที่ต้องดำเนินการและเกี่ยวข้องกับ interface นี้ ประกอบด้วย 2 การดำเนินการ คือ การกำหนด IPv6 address และการกำหนดให้ทำหน้าที่เป็น DHCP relay

ตัวอย่างการกำหนดคุณสมบัติโดยให้ interface เพื่อให้ผู้ใช้ได้รับ IPv6 address แบบ Stateful

!
ipv6 unicast-routing
!
interface GigabitEthernet0/3
 switchport
 switchport access vlan 300
 switchport mode access
!
interface Vlan300
 description Downlink to Clients with State Full address assignment
 ipv6 address 2001:303:CAFE:703::1/64
 ipv6 enable
 ipv6 nd prefix 2001:303:CAFE:703::/64 no-advertise
 ipv6 nd managed-config-flag
 ipv6 nd router-preference High
 ipv6 dhcp relay destination 2001:303:CAFE::121
!

จากตัวอย่าง เป็นการกำหนดคุณสมบัติโดยให้ RA ใน Cisco C6500 ไม่ต้องส่ง prefix (2001:303:CAFE:703::/64) ไปยังในเครือข่ายที่ต่อกับ interface แต่จะทำหน้าที่เป็น DHCP relay ที่จะร้องขอคุณสมบัติจากเครื่องลูกข่ายไปยังแม่ข่าย DHCP server (2001:303:CAFE::121)

คำสั่ง ipv6 nd managed-config-flag คือการประกาศให้เครื่องผู้ใช้ร้องขอคุณสมบัติด้วยวิธีการของ DHCP

ค่าที่เกี่ยวข้องกับ DNS จะกำหนดไว้ใน DHCP server 2 รายการ คือ

  • 00023: DNS Recursive Name Server IPv6 Address List
  • 00024: Domain Search List

กำหนดคุณสมบัติ Routing

การเลือกเส้นทางของ Cisco C6500 มีวิธีการเช่นเดียวกันกับอุปกรณ์เราท์เตอร์อื่น โดยสามารถกำหนดเส้นทางได้ 2 วิธีการหลัก คือ การกำหนดด้วยมือ (Static routing) และการใช้ Routing protocol (Dynamic routing)

การกำหนดเส้นทางด้วยมือ

การกำหนดเส้นทางด้วยมือสำหรับ IPv6 ใน Cisco C6500 มีหลักการเหมือน IPv4 แต่จะใช้คำสั่ง ipv6 route ดังตัวอย่างต่อไปนี้

# Format
# !
# ipv6 route <destination> <next-hop|interface> [administrative_distance]
# !
#
# Default routing
!
ipv6 route ::/0 2001:303:CAFE:701::1
!
#
# Default routing with Administrative distance
!
ipv6 route ::/0 2001:303:CAFE:701::1 128
!
#
# Specific destination
!
ipv6 route 2001:303:CAFE:7FFF::/64 2001:303:CAFE:703::1
!

ทดสอบการทำงานหลังการกำหนดเส้นทางด้วยมือ ด้วยคำสั่ง show ipv6 route static ได้ผลดังตัวอย่าง

C650#sh ipv6 route static 
IPv6 Routing Table - default - 81 entries
Codes: C - Connected, L - Local, S - Static, U - Per-user Static route
       B - BGP, R - RIP, I1 - ISIS L1, I2 - ISIS L2
       IA - ISIS interarea, IS - ISIS summary, D - EIGRP, EX - EIGRP external
       ND - ND Default, NDp - ND Prefix, DCE - Destination, NDr - Redirect
       O - OSPF Intra, OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2
       ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2, l - LISP
S   ::/0 [128/0]
     via 2001:303:CAFE:701::1
:

การกำหนดเส้นทางด้วย OSPFv3

หากต้องการใช้ OSPF (Open Shortest Path First) เป็น Routing protocol ในเครื่อข่าย เพื่อให้เราท์เตอร์แลกเปลี่ยนตารางเส้นทางของเครือข่าย IPv6 จะต้องใช้ OSPFv3

การกำหนดคุณสมบัติของ OSPFv3 ในตัวอย่างนี้ เป็นวิธีการหนึ่งที่สะดวกสำหรับผู้เขียน (เอาง่ายไปก่อน :) โดยใช้การประกาศ OSPFv3 process หมายเลข 1 ไว้ และไปกำหนด Area ที่ interface ดังตัวอย่างต่อไปนี้

!
ipv6 unicast-routing
!
:
!
interface Vlan100
 :
 ipv6 address 2001:303:CAFE:701::2/64
 :
 ipv6 ospf 1 area 0
!
:
!
interface Vlan200
 :
 ipv6 address 2001:303:CAFE:702::1/64
 :
 ipv6 ospf 1 area 0
!
:
!
interface Vlan300
 :
 ipv6 address 2001:303:CAFE:703::1/64
 :
 ipv6 ospf 1 area 0
!
ipv6 router ospf 1
 redistribute connected
!

การกำหนด OSPFv3 process สามารถกำหนดอีกแบบหนึ่งได้ คือ

!
router ospfv3 1
 address-family ipv6 unicast
  redistribute connected
 exit-address-family
!

ทดสอบการทำงานของ OSPFv3 ด้วยคำสั่ง show ipv6 route ospf ได้ผลดังตัวอย่าง

C6500# show ipv6 route ospf
IPv6 Routing Table - default - XX entries
Codes: C - Connected, L - Local, S - Static, U - Per-user Static route
       B - BGP, R - RIP, I1 - ISIS L1, I2 - ISIS L2
       IA - ISIS interarea, IS - ISIS summary, D - EIGRP, EX - EIGRP external
       ND - ND Default, NDp - ND Prefix, DCE - Destination, NDr - Redirect
       O - OSPF Intra, OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2
       ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2
OE2 ::/0 [110/1], tag 1
     via FE80::1A9C:5DFF:FE5E:B240, Vlan100
O   2001:303:CAFE:201::/64 [110/2]
     via FE80::1A9C:5DFF:FE5E:B240, Vlan200
O   2001:303:CAFE:301::/64 [110/2]
     via FE80::1A9C:5DFF:FE5E:B240, Vlan300
:

อ้างอิง


MediaWiki spam blocked by CleanTalk.