Thứ Ba, 11 tháng 6, 2013

Tìm hiểu về Cisco Discovery Protocol (CDP)

Trong bài viết tuần này, chúng ta cùng trao đổi về một giao thức quan trọng được tích hợp trên các dòng sản phẩm của Cisco, hỗ trợ rất nhiều cho việc quản lý thiết bị cũng như xử lý sự cố xảy ra trên hạ tầng mạng được xây dựng bởi các thiết bị của Cisco. Đó là giao thức CDP – Cisco Discovery Protocol.
CDP là một giao thức đặc biệt của Cisco (Cisco proprietary) cho phép thiết bị thu thập được thông tin về các thiết bị láng giềng kết nối trực tiếp với mình. Mặc định, khi một thiết bị Cisco được bật lên, nó sẽ gửi ra tất cả các cổng mạng up/up của nó các gói tin CDP liệt kê nhiều thông tin về bản thân để các thiết bị láng giềng có thể nắm được thông tin về nó, các gói tin CDP này được gửi theo định kỳ mặc định là 60s/lần (xem hình 1).
Hinh-1-Cac-thiet-bi-trao-doi-thong-tin-CDP

Hình 1 – Các thiết bị trao đổi thông tin CDP.
Lưu ý rằng thiết bị chỉ gửi CDP ra khỏi các cổng nào đang ở trạng thái up/up nên điều kiện tiên quyết để ta có thể thấy được thông tin CDP về láng giềng là kết nối đến láng giềng ấy phải up/up  (Status up, Protocol up).
CDP cho biết những thông tin như sau về thiết bị láng giềng kết nối trực tiếp:
      · Device ID: Hostname của thiết bị láng giềng.
      · Local Interface: Cổng nào đang được sử dụng để kết nối đến láng giềng.
      · Outgoing port: Láng giềng đang dùng cổng nào để kết nối đến mình.
      · Capability: Láng giềng có khả năng gì (Router, Switch , IGMP – một giao thức được sử dụng trong kỹ thuật Multicast).
      · Platform: Chủng loại thiết bị của láng giềng. Ví dụ: láng giềng là Router 2811, Switch 3560,…
      · Địa chỉ IP của láng giềng.
      · IOS version: Hệ điều hành mà thiết bị láng giềng đang sử dụng.
Tương tự như các bài viết từ trước đến này, chúng ta cùng khảo sát vấn đề cần trao đổi thông qua một bài lab ví dụ.

SƠ ĐỒ

Hinh-2-So-do-bai-lab-vi-du
Hình 2 – Sơ đồ bài lab ví dụ.

MÔ TẢ

     · Trên sơ đồ hình 2, chúng ta thực hiện cấu hình cơ bản các thông số về hostname, địa chỉ IP trên các interface của các router như được chỉ ra. Tiếp theo, trên sơ đồ đã được cấu hình, chúng ta tiến hành thử một vài lệnh kiểm tra kết quả CDP cũng như hiệu chỉnh một số thông số của hoạt động CDP.
      · Người viết sử dụng các router Cisco dòng 2811với hệ điều hành là “c2800nm-adventerprisek9-mz.124-15.T1.bin” để thực hiện bài viết này.

THỰC HIỆN

BƯỚC 1: CẤU HÌNH CƠ BẢN

Trong bước này, ta đặt hostname và địa chỉ IP trên các router.
Trên R1:
Router(config)#hostname R1
R1(config)#interface f0/1
R1(config-if)#no shutdown
R1(config-if)#ip address 192.168.12.1 255.255.255.0
R1(config-if)#exit
R1(config)#interface f0/0
R1(config-if)#no shutdown
R1(config-if)#ip address 192.168.1.1 255.255.255.0
R1(config-if)#exit
R1(config)#interface loopback 0
R1(config-if)#ip address 1.1.1.1 255.255.255.255
R1(config-if)#exit
Trên R2:
Router(config)#hostname R2
R2(config)#interface f0/1
R2(config-if)#no shutdown
R2(config-if)#ip address 192.168.12.2 255.255.255.0
R2(config-if)#exit
R2(config)#interface loopback 0
R2(config-if)#ip address 2.2.2.2 255.255.255.255
R2(config-if)#exit
Với các bạn mới bắt đầu làm quen với thiết bị Cisco:
      · Interface loopback là một interface luận lý trên thiết bị, không phải là một cổng thật. Interface này luôn luôn up/up trừ khi người quản trị shutdown. Do đó khi khai báo interface loopback, chúng ta không cần phải “no shutdown” như với các cổng vật lý khác.
Tiếp theo, ta thực hiện đặt IP cho PC là 192.168.1.2/24 và chỉ default – gateway về router R1(hình 3):
Hinh-3-Cau-hinh-IP-tren-PC
Hình 3 – Cấu hình IP trên PC.
Đến đây, mọi địa chỉ đã được cấu hình trên các interface theo quy hoạch IP trên hình 2.

BƯỚC 2: THAO TÁC VỚI CDP

Chúng ta cùng thực hành một số lệnh “show” tiêu biểu với giao thức CDP.
Trên Router R1, thực hiện lệnh “show cdp neighbors” để xem các thông tin về láng giềng R2:
R1#show cdp neighbors
Capability Codes: R - Router, T - Trans Bridge, B - Source Route Bridge
 S - Switch, H - Host, I - IGMP, r - Repeater

Device ID Local Intrfce Holdtme Capability Platform Port ID
R2 Fas 0/1 179 R S I 2811 Fas 0/1
Từ kết quả hiển thị ta thấy: láng giềng của Router R1 là thiết bị có tên là R2 (cột Device ID), thiết bị này là dòng Router 2811 (cột Platform), Router R1 đang dùng cổng F0/1 của mình để đấu nối với cổng F0/1 của láng giềng (xem 2 cột Local Intrfce và Port ID).
Ta không thấy PC được liệt kê trong bảng láng giềng CDP của R1 vì card mạng trên PC không phải là thiết bị của Cisco.
Để có thể xem thông tin ở dạng chi tiết hơn, ta có thể sử dụng lệnh “show cdp neighbors detail”:
R1#show cdp neighbors detail
-------------------------
Device ID: R2
Entry address(es):
 IP address: 192.168.12.2
Platform: Cisco 2811, Capabilities: Router Switch IGMP
Interface: FastEthernet0/1, Port ID (outgoing port): FastEthernet0/1
Holdtime : 158 sec

Version :
Cisco IOS Software, 2800 Software (C2800NM-ADVENTERPRISEK9-M), Version 12.4(15)T1, RELEASE SOFTWARE (fc2)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2008 by Cisco Systems, Inc.
Compiled Sat 08-Nov-08 21:58 by prod_rel_team

advertisement version: 2
VTP Management Domain: ''
Duplex: full
Với kết quả xuất chi tiết, ngoài những thông tin đã biết được ở trên, ta còn biết thêm thông tin về địa chỉ IP cũng như hệ điều hành mà láng giềng đang sử dụng.
Ta thực hiện tương tự với Router R2:
R2#show cdp neighbors
Capability Codes: R - Router, T - Trans Bridge, B - Source Route Bridge
 S - Switch, H - Host, I - IGMP, r - Repeater

Device ID Local Intrfce Holdtme Capability Platform Port ID
R1 Fas 0/1 164  R S I 2811 Fas 0/1

R2#show cdp neighbors detail
-------------------------
Device ID: R1
Entry address(es):
 IP address: 192.168.12.1
Platform: Cisco 2811, Capabilities: Router Switch IGMP
Interface: FastEthernet0/1, Port ID (outgoing port): FastEthernet0/1
Holdtime : 173 sec

Version :
Cisco IOS Software, 2800 Software (C2800NM-ADVENTERPRISEK9-M), Version 12.4(15)T1, RELEASE SOFTWARE (fc2)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2009 by Cisco Systems, Inc.
Compiled Wed 03-Jun-09 14:30 by prod_rel_team
advertisement version: 2
VTP Management Domain: ''
Duplex: full
Bên cạnh các lệnh “show cdp neighbors [detail]”, ta cũng có thể sử dụng lệnh “show cdp entry” để thu được kết quả tương tự.
R2#show cdp entry R1 <-xem các thông tin CDP của R1.
-------------------------
Device ID: R1
Entry address(es):
 IP address: 192.168.12.1
Platform: Cisco 2811, Capabilities: Router Switch IGMP
Interface: FastEthernet0/1, Port ID (outgoing port): FastEthernet0/1
Holdtime : 134 sec

Version :
Cisco IOS Software, 2800 Software (C2800NM-ADVENTERPRISEK9-M), Version 12.4(15)T1, RELEASE SOFTWARE (fc2)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2009 by Cisco Systems, Inc.
Compiled Wed 03-Jun-09 14:30 by prod_rel_team

advertisement version: 2
VTP Management Domain: ''
Duplex: full

R2#show cdp entry * <-xem các thông tin CDP của mọi láng giềng.
-------------------------
Device ID: R1
Entry address(es):
 IP address: 192.168.12.1
Platform: Cisco 2811, Capabilities: Router Switch IGMP
Interface: FastEthernet0/1, Port ID (outgoing port): FastEthernet0/1
Holdtime : 127 sec

Version :
Cisco IOS Software, 2800 Software (C2800NM-ADVENTERPRISEK9-M), Version 12.4(15)T1, RELEASE SOFTWA
RE (fc2)Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2009 by Cisco Systems, Inc.
Compiled Wed 03-Jun-09 14:30 by prod_rel_team

advertisement version: 2
VTP Management Domain: ''
Duplex: full
Tiếp theo, chúng ta sẽ cùng hiệu chỉnh một số thông số của hoạt động CDP.

BƯỚC 3: HIỆU CHỈNH HOẠT ĐỘNG CDP

      · Cấu hình các router gửi thông báo CDP theo định kỳ 10s/lần và giá trị hold time được chỉnh lại thành 40s.
     · Sử dụng các địa chỉ trên các cổng loopback 0 của hai router để làm các địa chỉ IP được quảng bá đi trong các thông điệp CDP thay cho địa chỉ đấu nối trên hai cổng F0/1 như hiển thị ở bước 2.
      · Tắt CDP trên cổng F0/0 của R1.

CẤU HÌNH

Trên cả hai router:
R(config)#cdp source-interface loopback 0
R(config)#cdp timer 10
R(config)#cdp holdtime 40
R(config)#interface f0/0
R(config-if)#no cdp enable
R(config-if)#exit

GHI CHÚ

Trong bước này, chúng ta thực hiện hiệu chỉnh một số thông số cơ bản của hoạt động CDP:
     · Mặc định, các thiết bị Cisco sẽ gửi các thông điệp CDP cho nhau theo định kỳ 60s/lần và quy định thời gian holdtime là 180s. Sau khoảng thời gian holdtime, nếu router không nhận được thông tin CDP từ láng giềng, nó sẽ kết luận láng giềng down và xóa toàn bộ thông tin về láng giềng ra khỏi bảng thông tin CDP.
Ta có thể thay đổi các khoảng thời gian này bằng cách sử dụng các lệnh hiệu chỉnh:
R(config)#cdp timer seconds
R(config)#cdp holdtime seconds
      · Mặc định, khi gói tin CDP đi ra khỏi cổng nào, nó sẽ mang theo thông tin về địa chỉ IP trên cổng ấy để làm địa chỉ đại diện cho router. Ta có thể thay đổi địa chỉ đại diện này bằng cách sử dụng lệnh:
R(config)#cdp source-interface Tên_cổng
Khi đó, địa chỉ trên cổng được chỉ định sẽ được sử dụng làm địa chỉ đại diện cho router. Trong bước này, ta chọn các interface loopback 0.
      · Trong trường hợp thiết bị của chúng ta có kết nối đến các thiết bị bên ngoài, chúng ta cần phải tắt việc trao đổi thông tin CDP trên các interface đấu nối ra bên ngoài để đảm bảo vấn đề bảo mật. Câu lệnh để tắt CDP trên một cổng:
R(config-if)#no cdp enable
Trong bước này, chúng ta đã thực hiện tắt CDP trên cổng của R1 đấu nối xuống PC vì phía này không có thiết bị nào của Cisco cả.

KIỂM TRA

Trên hai router, chúng ta sử dụng lệnh “show cdp” để kiểm tra các thông số đã hiệu chỉnh. Ví dụ, trên R1:
R1#show cdp
Global CDP information:
 Sending CDP packets every 10 seconds
 Sending a holdtime value of 40 seconds
 Sending CDPv2 advertisements is enabled
 Source interface is Loopback0
Danh sách các cổng đang tham gia CDP trên R1:
R1#show cdp interface
FastEthernet0/1 is up, line protocol is up
 Encapsulation ARPA
 Sending CDP packets every 10 seconds
 Holdtime is 40 seconds
Ta thấy, chỉ có cổng F0/1 trên danh sách này, cổng F0/0 đã bị loại khỏi danh sách tham gia CDP.
Ta kiểm tra rằng địa chỉ IP đại diện đã được thay đổi thành IP trên cổng loopback:
R1#show cdp neighbors detail
-------------------------
Device ID: R2
Entry address(es):
 IP address: 2.2.2.2
Platform: Cisco 2811, Capabilities: Router Switch IGMP
Interface: FastEthernet0/1, Port ID (outgoing port): FastEthernet0/1
Holdtime : 35 sec

Version :
Cisco IOS Software, 2800 Software (C2800NM-ADVENTERPRISEK9-M), Version 12.4(15)T1, RELEASE SOFTWARE (fc2)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2008 by Cisco Systems, Inc.
Compiled Sat 08-Nov-08 21:58 by prod_rel_team

advertisement version: 2
VTP Management Domain: ''
Duplex: full
Ta có thể thực hiện kiểm tra tương tự trên router R2.
Trên đây chúng ta đã cùng nhau khảo sát về giao thức CDP. Đây là một giao thức quan trọng phục vụ cho các tác vụ quản lý và xử lý sự cố trên các thiết bị mạng của Cisco, do đó cần được nắm vững khi chúng ta phải thường xuyên thao tác và quản trị các dòng sản phẩm của Cisco.
Cảm ơn các bạn!

- Trong bài viết này sẽ mô tả phương pháp cấu hình giao thức CDP (Cisco Discovery Protocol) trên Catalyst 3560 Switch.

- Những phần sẽ được trình bày trong bài viết này:
+ Phần I: Tìm hiều về CDP
+ Phần II: Cấu hình CDP
+ Phần III: Giám sát và duy trì CDP.


Phần I: Tìm hiểu CDP- CDP là một giao thức dùng để khám phá thiết bị, giao thức này hoạt động ở layer 2 (Layer Data Link) trên tất cả các thiết bị của hãng Cisco (như: router, bridge, access server, và switch) và cho phép các ứng dụng quản lý mạng có thể tìm ra những thiết bị của Cisco, những thiết bị này là những thiết bị hàng xóm đã biết. Với CDP, những ứng dụng quản lý mạng có thể học được các loại thiết bị và địa chỉ SNMP agent của thiết hàng xóm đang chạy ở layer bên dưới, những giao thức truyền dữ liệu. Tính năng này cho phép những ứng dụng gửi các SNMP queries đến các thiết bị hàng xóm.


- CDP chạy trên tất cả các môi trường mạng có hỗ trợ Sunetwork Access Protocol (SNAP). Bởi vì CDP chạy trên một layer duy nhất đó là Layer Data-link, hai hệ thống có khả năng hỗ trợ những giao thức khác nhau của layer network có thể học được thông tin về thiết bị của nhau.- Mỗi một thiết bị đã cấu hình CDP sẽ gửi các thông điệp theo chu kỳ dưới dạng địa chỉ multicast, để quảng bá ít nhất một địa chỉ mà nó có thể nhận các SNMP message. Quá trình quảng bá cũng chứa time-to-live (TTL), hoặc thông tin holdtime, holdtime là thời gian mà một thiết bị nhận được một thông tin CDP về một thiết bị khác và lưu trữ chúng trước khi quyết định hủy thông tin đó đi. Mỗi thiết bị cũng luôn lắng nghe những message được gửi bởi những thiết bị khác để học thông tin về hàng xóm của những thiết bị đó.

- Trên một switch, CDP đã enable Network Assistant để hiển thị một bản đồ về một mạng nào đó. Switch sử dụng CDP để tìm kiếm những cluster candidate và duy trì những thông tin về các thành viên của cluster đó.
- Các switch có khả năng hỗ trợ CDP version 2.

Phần II: Cấu hình CDP
- Phần cấu hình CDP sẽ bao gồm những chủ đề sau:
+ Cấu hình CDP mặc định
+ Cấu hình các thông số của CDP
+ Disable và Enable CDP
+ Disable và Enable CDP trên một interface.

1. Cấu hình CDP mặc định
- Bảng 1.1 hiển thị các thông số cấu hình mặc định của CDP.

Bảng 1.1



2. Cấu hình các thông số của CDP.

- Bạn có thể cấu hình lại thời gian để update các CDP message, và thời gian để lưu trữ những thông tin đó trước khi quyết định hủy thông tin đó đi.

- Bắt đầu cấu hình ở chế độ Privileged EXEC trên switch, bạn sẽ thực hiện các bước sau để cấu hình lại CDP timer, holdtime và advertisement type.

example:
Switch_3560_VNE# configure terminal
Switch_3560_VNE(config)# cdp timer 50
Switch_3560_VNE(config)# cdp holdtime 120
Switch_3560_VNE(config)# cdp advertise-v2
Switch_3560_VNE(config)# end
Switch_3560_VNE# show cdp
Switch_3560_VNE# copy run start

- Sử dụng từ khóa no trước các câu lệnh của CDP để trở về những tham số mặc định.

3. Disable và Enable CDP.

- CDP được enable theo mặc định.

- Các bạn có thể thực hiện những bước sau để disable CDP.
example:
Switch_3560_VNE# configure terminal
Switch_3560_VNE(config)# no cdp run
Switch_3560_VNE(config)# end

- Để enable CDP trở lại hoạt động, bạn sử dụng những câu lệnh dưới đây:
example:
Switch_3560_VNE# configure terminal
Switch_3560_VNE(config)# cdp run
Switch_3560_VNE(config)# end

4. Disable và Enable CDP trên một interface.

- CDP được enable mặc định trên tất cả các interface để gửi và nhận các thông tin CDP.

- Để disable CDP trên một interface nào đó, sử dụng những câu lệnh sau:
example:
Switch_3560_VNE# configure terminal
Switch_3560_VNE(config)# interface fastethernet 0/22
Switch_3560_VNE(config-if)# no cdp enable
Switch_3560_VNE(config-if)# end
Switch_3560_VNE# copy run start

- Để enable CDP hoạt động trở lại trên một interface nào đó, thì bạn có thể dùng những lệnh sau:
example:
Switch_3560_VNE# configure terminal
Switch_3560_VNE(config)# interface fastethernet 0/24
Switch_3560_VNE(config-if)# cdp enable
Switch_3560_VNE(config-if)# end
Switch_3560_VNE# copy run start

5. Giám sát và duy trì CDP.

- Để có thể giám sát và duy trì sự hoạt động của CDP trên thiết bị của bạn, thì bạn có thể thi hành một trong những câu lệnh sau:
example:
Switch_3560_VNE# clear cdp counters
Switch_3560_VNE# clear cdp table
Switch_3560_VNE# show cdp
Switch_3560_VNE# show cdp entry
Switch_3560_VNE# show cdp interface fa/23
Switch_3560_VNE# show cdp neighbors detail
Switch_3560_VNE# show cdp traffic

0 nhận xét:

Đăng nhận xét