Tuesday, April 27, 2010

Routing

Router là một thiết bị hoạt động trên layer3 của OSI. Sẽ làm việc trực tiếp với các Packet. Việc di chuyển các packet đi trên mạng yêu cầu các routers phải biết đc đường đi đến từng mạng mà nó có thể đưa gói tin tớ đích.Công việc di chuyển này đòi hỏi các Routers phải có các protocols riêng để có thể nói chuyện đc với nhau. Các protocols này đc gọi là Routing protocols
Một số thuật ngữ:
1.Connected Routes
Khi một router kết nối với một router khác, nó sẽ có mọt đường đi đến router đó, mỗi đường đi đi ra trực tiếp từ router đó đc gọi là connected routes
ví dụ:
R1(fa0/0)---------------(fa0/0)R2
|
|
(fa0/1)
R3
giả cử ta có sơ đồ trên, đường mạng nối R1 với R2 là 192.168.1.0 và đường mạng nối R1 với R3 là 172.16.0.0
Khi đó R1 sẽ có 1 route đi đến R2(192.168.1.0) và có 1 route đi đến R3(172.16.0.0).
Trong trường hợp này, connected route của R1 chính là 2 route ở trên.
Nếu dứng trên R1, dùng lệnh show ip route thì trong routing table sẽ thấy các dòng có chữ "C" đứng trước, đó chính là biểu hiện cho connected route
--------------------------------------------------
R1#show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
* - candidate default, U - per-user static route, o - ODR
P - periodic downloaded static route

Gateway of last resort is not set

C 172.16.0.0/16 is directly connected, FastEthernet0/1
C 192.168.1.0/24 is directly connected, FastEthernet0/0

--------------------------------------------------
2. Static route
Với mô hình trên, nếu đứng ở vị trí của R3 thì ta vẫn chưa thể đưa gói tin đến đích là các mạng của R2 đươc, thậm việc đưa gói tin đến mạng của R1 và R2 cũng chưa đc, bởi vì sau khi cấu hình cơ bản cho

router, các router vẫn chưa đc định tuyến để học các mạng khác ko connected với nó.
Static route là mọt kiểu định tuyến tĩnh, việc cấu hình là do người quản trị cấu hình bằng tay cho các routers.
để cấu hình static route ta có thể dùng cú pháp lệnh:
R(config)#ip route [network] [netmask] [nexthop]
Gỉa sử với mô hình trên, để R3 có thể học đc mạng của R1 và R2 thì ta sẽ cấu hình trên R3:
R3(config)#ip route 192.168.1.0 255.255.255.0 fa0/1
dùng lệnh show ip route trên R3 để xác nhận lại
---------------------------------------------------
R3#show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
* - candidate default, U - per-user static route, o - ODR
P - periodic downloaded static route

Gateway of last resort is not set

C 172.16.0.0/16 is directly connected, FastEthernet0/1
S 192.168.1.0/24 is directly connected, FastEthernet0/1

--------------------------------------------------
chữ "S" đứng đầu cho thấy đây là mạng học qua static route
Dùng Ping để kiểm tra kết nối:
--------------------------------------------------
R3#ping 192.168.1.2

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.1.2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 62/62/63 ms
--------------------------------------------------
Lưu ý là lệnh ping sẽ có dùng một gói tin phát đi để kiểm tra và khi thiết bị nhận đc phải trả về gói tin đó, vì vậy cần phải cấu hình trên cả 2 thiết bị để ping đc.
3. Default route
Khi một gói tin đc đóng gói với IP source và IP đích vào IP header thì lúc đến router, router sẽ kiểm tra xem gói tin đó có dest IP trùng với bất kỳ một route nào mà nó có trong routing table hay ko. Nếu

trùng(match) thì nó sẽ forward gói tin ra theo route đó. Còn nếu không có thì sao?! Mặc định thì nếu kop match bất kỳ mọt route nào thì router sẽ drop gói tin đó.
Khái niệm default route: DR là một route đảm bảo rằng tất cả gói tin đến với router đều đc forward, nó sẽ match tất cả các gói tin kể cả các gói tin với IP ko nằm trong routing table của nó.
Khi một gói tin mà đích của nó ko có trong bất kỳ một entry nào của routing table thì gói tin đó sẽ đc forward đến default route.
Default route đc sử dụng trong trường hợp nào?!
Quay lại với mô hình trên, hãy tưởng tượng rằng con R2 đc kết nối tới Internet, như ta biết thì Internet có rất nhiều mạng. Nếu với định nghĩa của routing thì khi gói tin đến R2, nó phải cho R2 biết nó muốn đi

đâu, điều đó có nghĩa là R2 phải học tất cả các mạng trong Internet. Điều này là không thể vì như thế sẽ chẳng đủ bộ nhớ để cho R2 lưu trữ các route vào routing table.
Khi đó giải pháp là ta sẽ cấu hình default route trên R2 để nó biết rằng, khi gói tin muốn đi ra Internet, nó sẽ forward gói tin theo default route vì nó ko biết đc dest IP của gói tin là ở đâu.
Ưu điểm của default route là giúp cho routing table nhỏ gọn hơn, ko bị quá tải.
Cấu hình default route:
R(config)#ip route 0.0.0.0 0.0.0.0 [nexthop]
Ví dụ với mô hình trên, ta sẽ thêm một route vào R2 để ra một mạng ko có trong routing table của các routers khác. Ta sẽ thử đặt một webserver vào đây(mình sẽ đưa file cấu hình bằng Packet Tracer lên)
R1(fa0/0)---------------(fa0/0)R2(fa0/1)---------webserver
|
|
(fa0/1)
R3

Gỉa sử mạng giữa R2 và webserver là 192.168.2.0/24.
Có 2 cách để cấu hình, ở đây ta chỉ làm theo bước đơn giản là cấu hình lần lượt trên từng Routers.
Ở R2 ta sẽ cấu hình default route chỉ đến webserver, từ R1 sẽ chỉ đến R2, từ R3 sẽ chỉ đến R1.
Cấu hình:
----------------------------------------
R1(config)#ip route 0.0.0.0 0.0.0.0 fa0/0
R2(config)#ip route 0.0.0.0 0.0.0.0 fa0/1
R3(config)#ip route 0.0.0.0 0.0.0.0 fa0/1
----------------------------------------
show run cấu hình để xem lại, dùng ping để kiểm tra các kết nối.
---------------------------------------
R3#ping 192.168.2.2

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.2.2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 78/87/94 ms
---------------------------------------
Show cấu hình từ R3 ta thấy không có route nào đến 192.168.2.0/24
---------------------------------------
R3#show ip rout
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
* - candidate default, U - per-user static route, o - ODR
P - periodic downloaded static route

Gateway of last resort is 0.0.0.0 to network 0.0.0.0

C 172.16.0.0/16 is directly connected, FastEthernet0/1
S 192.168.1.0/24 is directly connected, FastEthernet0/1
S* 0.0.0.0/0 is directly connected, FastEthernet0/1
---------------------------------------
OK, mình đã giới thiệu về Routing, connected route, static route, default route. Bữa sau mình sẽ giới thiệu về Dynamic routing!;)
Đây là file cấu hình bằng Packet tracer, bạn có thể tham khảo!
http://vnnshare.com/download/lyztN2ynV2/tut.rar

1 comment:

  1. Bài viết rất dễ hiểu, ngắn gọn, Cám ơn Anh.

    ReplyDelete