/*auto readmore*/ /*auto readmore*/ /* an hien script*/ // an hien password /*an hien ma chuong trinh cong tru */ /*Scrollbox thanh cuon*/ /***Nhung CODE***/ /* dòng xanh dòng trắng */ /* https://cdnjs.com/libraries/prism lay thu vien, can vao ten file ma goi 1. copy link vao vi du:prism-python.min.js 2. ten ngon nua la python */ /*=== New posts ===*/ /*header slider*/ /*=== bai viet lien quan===*/ /*===tabcode===*/

Cisco, Route Filtering - RIP, Lọc route với giao thức RIP

Bài Lab

Các kiến thức sử dụng trong bài: Spanning Tree Protocol, RIPv2, Route Filtering

YÊU CẦU:


1. Cấu hình ban đầu:
  • Cấu hình STP trên switch giúp mạng hội tụ nhanh
  • Cấu hình RIPv2 đảm bảo tất cả các IP phải ping thấy nhau.
2. Lọc route với Passive - Interface
Cấu hình trên R1 sao cho mọi dữ liệu ra khỏi R4 bắt buộc phải theo hướng kết nối R4 và R2

3. Lọc route với Standard Access-List, Distribute List
Cấu hình trên R1 đảm bảo chỉ cho phép subnet 172.16.51.0/24 của R5 và 172.16.41.0/24 của R4 thấy nhau, các subnet khác của R4, R5 không được phép. (phải bỏ cấu hình yêu cầu 2 trước khi làm)

4. Lọc route với Extended ACL:
Cấu hình trên R3 sao cho dữ liệu ra khỏi R3 đến subnet 172.16.41.0/24 chỉ được phép thông R2.5. Lọc route với Prefix-List
Trên R2 tạo thêm các loopback với địa chỉ IP như sau:
+ Loopback 1: 10.1.128.1/17
+ Loopback 2: 10.1.64.1/18
+ Loopback 3: 10.1.32.1/19
+ Loopback 4: 10.1.16.1/20
+ Loopback 5: 10.1.8.1/21
+ Loopback 6: 10.1.4.1/22
+ Loopback 7: 10.1.2.1/23
+ Loopback 8: 10.1.1.1/24
+ Loopback 9: 10.1.0.129/25
+ Loopback 10: 10.1.0.65/26
  • Tất cả các loopback từ 1->10 tham gia vào RIP
  • Cấu hình trên R1 sẽ đi đến các subnet loopback vừa tạo có prefix-length từ 20 đến 24 đi theo hướng R4, các interface còn lại đi theo hướng R2 
6. Lọc route bằng cách hiệu chỉnh AD
Bằng cách cấu hình hiệu chỉnh AD trên R2 sao cho lọc và xóa route 172.16.42.0/24 ra khỏi bảng định tuyến trênR2.

7. Hiệu chỉnh AD theo neighbor
Sử dụng kỹ thuật hiệu chỉnh AD neighbor và cấu hình trên R1 đảm bảo dữ liệu đi từ R1 đến subnet 172.16.41.0/24 bắt buộc phải thông qua R2.

8. Lọc route với offset-list
Sử dụng offset - list và cáu hình trên R4 sao cho R4 đi đến subnet 172.16.11.0/24 của R1 phải thông qua R2.


GỢI Ý CẤU HÌNH


1. Cấu hình ban đầu:
  • Cấu hình STP trên switch giúp mạng hội tụ nhanh
  • Cấu hình RIPv2 đảm bảo tất cả các IP phải ping thấy nhau.
!Switch
spanning-tree mode rapid-pvst
spanning-tree portfast default
!R1

interface Ethernet0/3
no shutdown
ip address 192.168.15.1 255.255.255.0
interface Ethernet0/2
no shutdown
ip address 192.168.14.1 255.255.255.0
interface Ethernet0/0
no shutdown
ip address 192.168.123.1 255.255.255.0
interface lo11
ip address 172.16.11.1 255.255.255.0
exit
router rip
version 2
network 172.16.0.0
network 192.168.14.0
network 192.168.15.0
network 192.168.123.0
no auto-summary


!R2
interface Ethernet0/1
no shutdown
ip address 192.168.24.2 255.255.255.0
interface Ethernet0/0
no shutdown
ip address 192.168.123.2 255.255.255.0
interface lo22
ip address 172.16.22.1 255.255.255.0
exit
router rip
version 2
network 172.16.0.0
network 192.168.24.0
network 192.168.123.0
no auto-summary
!R3
interface Ethernet0/0
no shutdown
ip address 192.168.123.3 255.255.255.0
interface lo33
ip address 172.16.33.1 255.255.255.0
exit
router rip
version 2
network 172.16.0.0
network 192.168.123.0
no auto-summary
!R4

interface Ethernet0/1
no shutdown
ip address 192.168.24.4 255.255.255.0
interface Ethernet0/2
no shutdown
ip address 192.168.14.4 255.255.255.0
interface lo41
ip address 172.16.41.1 255.255.255.0
interface lo42
ip address 172.16.42.1 255.255.255.0
exit
router rip
version 2
network 172.16.0.0
network 192.168.14.0
network 192.168.24.0
no auto-summary
!R5

interface Ethernet0/3
no shutdown
ip address 192.168.15.5 255.255.255.0
interface lo51
ip address 172.16.51.1 255.255.255.0
interfacelo52
ip address 172.16.52.1 255.255.255.0
exit
router rip
version 2
network 172.16.0.0
network 192.168.15.0
no auto-summary

2. Lọc route với Passive - Interface
Cấu hình trên R1 sao cho mọi dữ liệu ra khỏi R4 bắt buộc phải theo hướng kết nối R4 và R2

!Bảng route ban đầu
R4#show ip route rip
đã xóa 1 số dòngGateway of last resort is not set

172.16.0.0/16 is variably subnetted, 9 subnets, 2 masks
R 172.16.11.0/24 [120/1] via 192.168.14.1, 00:02:19, Ethernet0/2
R 172.16.22.0/24 [120/1] via 192.168.24.2, 00:00:07, Ethernet0/1
R 172.16.33.0/24 [120/2] via 192.168.24.2, 00:00:07, Ethernet0/1
                             [120/2] via 192.168.14.1, 00:02:19, Ethernet0/2
R 172.16.51.0/24 [120/2] via 192.168.14.1, 00:02:19, Ethernet0/2
R 172.16.52.0/24 [120/2] via 192.168.14.1, 00:02:19, Ethernet0/2
R 192.168.15.0/24 [120/1] via 192.168.14.1, 00:02:19, Ethernet0/2
R 192.168.123.0/24 [120/1] via 192.168.24.2, 00:00:07, Ethernet0/1
                                 [120/1] via 192.168.14.1, 00:02:19, Ethernet0/2

Để thực hiện yêu cầu ta cấu hình không cho R1 quảng bá route qua cổng Et0/2 bằng cấu hình Passive-interface (Et0/2 của R1 có thể nhận bảng route thông qua cổng này bình thường).
!Cấu hình
router rip
 passive-interface Ethernet0/2
end
!
!Kết quả sau khi cấu hình
R4#show ip route rip
đã xóa 1 số dòng
Gateway of last resort is not set
172.16.0.0/16 is variably subnetted, 9 subnets, 2 masks
R 172.16.11.0/24 [120/2] via 192.168.24.2, 00:00:08, Ethernet0/1
R 172.16.22.0/24 [120/1] via 192.168.24.2, 00:00:08, Ethernet0/1
R 172.16.33.0/24 [120/2] via 192.168.24.2, 00:00:08, Ethernet0/1
R 172.16.51.0/24 [120/3] via 192.168.24.2, 00:00:08, Ethernet0/1
R 172.16.52.0/24 [120/3] via 192.168.24.2, 00:00:08, Ethernet0/1
R 192.168.15.0/24 [120/2] via 192.168.24.2, 00:00:08, Ethernet0/1
R 192.168.123.0/24 [120/1] via 192.168.24.2, 00:00:08, Ethernet0/1
3. Lọc route với Standard Access-List, Distribute List
Cấu hình trên R1 đảm bảo chỉ cho phép subnet 172.16.51.0/24 của R5 và 172.16.41.0/24 của R4 thấy nhau, các subnet khác của R4, R5 không được phép. (phải bỏ cấu hình yêu cầu 2 trước khi làm)
Ta thấy R1 có hướng kết nối trực tiếp đến với nhiều router khác, R5 chỉ có một hướng kết nối trực tiếp R1 mà thôi. Nên ta chọn Access-List sẽ cài đặt trên cổng E0/3 của R1 là hợp lý nhất.
!R1
ip access-list standard R4_41.0_TO_R5
 permit 172.16.41.0
 deny   any
ip access-list standard R5_51.0_TO_R4
 permit 172.16.51.0
 deny   any
exit
!
router rip
 distribute-list R5_51.0_TO_R4 in Ethernet0/3
 distribute-list R4_41.0_TO_R5 out Ethernet0/3
end
!
!Kiểm tra sau khi cấu hình access-list
R1#show access-lists
Standard IP access list R4_41.0_TO_R5
10 permit 172.16.41.0 (11 matches)
20 deny any (101 matches)
Standard IP access list R5_51.0_TO_R4
10 permit 172.16.51.0 (10 matches)
20 deny any (47 matches)
R1#show ip protocols
*** IP Routing is NSF aware ***
Routing Protocol is "rip"
Outgoing update filter list for all interfaces is not set
Ethernet0/3 filtered by R4_41.0_TO_R5 (per-user), default is not set
Incoming update filter list for all interfaces is not set
Ethernet0/3 filtered by R5_51.0_TO_R4 (per-user), default is not set
Sending updates every 30 seconds, next due in 21 seconds
  !Kiểm tra kết quả bảng route trên R4, R5
R4#show ip route rip
Gateway of last resort is not set
172.16.0.0/16 is variably subnetted, 8 subnets, 2 masks
R 172.16.11.0/24 [120/1] via 192.168.14.1, 00:00:20, Ethernet0/2
R 172.16.22.0/24 [120/1] via 192.168.24.2, 00:00:23, Ethernet0/1
R 172.16.33.0/24 [120/2] via 192.168.24.2, 00:00:23, Ethernet0/1
                             [120/2] via 192.168.14.1, 00:00:20, Ethernet0/2
R 172.16.51.0/24 [120/2] via 192.168.14.1, 00:00:20, Ethernet0/2
R 192.168.15.0/24 [120/1] via 192.168.14.1, 00:00:20, Ethernet0/2
R 192.168.123.0/24 [120/1] via 192.168.24.2, 00:00:23, Ethernet0/1
                                [120/1] via 192.168.14.1, 00:00:20, Ethernet0/2
R5#show ip route rip
172.16.0.0/16 is variably subnetted, 5 subnets, 2 masks
R 172.16.41.0/24 [120/2] via 192.168.15.1, 00:00:18, Ethernet0/3
4. Lọc route với Extended ACL: Cấu hình trên R3 sao cho dữ liệu ra khỏi R3 đến subnet 172.16.41.0/24 chỉ được phép thông R2.
Kiểm tra bảng route trên R3 lúc chưa cấu hình
R3#show ip route 172.16.41.1
Routing entry for 172.16.41.0/24
Known via "rip", distance 120, metric 2
Redistributing via rip
Last update from 192.168.123.2 on Ethernet0/0, 00:00:09 ago
Routing Descriptor Blocks:
* 192.168.123.2, from 192.168.123.2, 00:00:09 ago, via Ethernet0/0
Route metric is 2, traffic share count is 1
192.168.123.1, from 192.168.123.1, 00:00:12 ago, via Ethernet0/0
Route metric is 2, traffic share count is 1


Ta thấy R3 học được subnet 172.16.41.0 từ IP 192.168.123.1 của R1 và 192.168.123.1 của R2 thông qua interface Et0/0 của nó. Vậy để đáp ứng yêu cầu đặt ra, ta viết ACL chặn hướng quảng bá của subnet 172.16.41.0 từ IP 192.168.123.1 đến R3 và áp theo chiều in đối với interface Et0/0.

!Cấu hình
access-list 101 deny ip host 192.168.123.1 host 172.16.41.0
access-list 101 permit ip any any
access-list 101 remark R4_41.0_TO_R3_via_R1
exit
!
router rip
distribute-list 101 in Ethernet0/0
end
!
!Kiểm tra
R3#show access-lists 101
Extended IP access list 101
10 deny ip host 192.168.123.1 host 172.16.41.0 (6 matches)
20 permit ip any any (58 matches)
R3#show ip route 172.16.41.0
Routing entry for 172.16.41.0/24
Known via "rip", distance 120, metric 2
Redistributing via rip
Last update from 192.168.123.2 on Ethernet0/0, 00:00:21 ago
Routing Descriptor Blocks:
* 192.168.123.2, from 192.168.123.2, 00:00:21 ago, via Ethernet0/0
Route metric is 2, traffic share count is 1
R3#traceroute 172.16.41.1
Type escape sequence to abort.
Tracing the route to 172.16.41.1
VRF info: (vrf in name/id, vrf out name/id)
1 192.168.123.2 1 msec 2 msec 1 msec
2 192.168.24.4 1 msec 2 msec *
5. Lọc route với Prefix-List
Trên R2 tạo thêm các loopback với địa chỉ IP như sau:
          + Loopback 1: 10.1.128.1/17
          + Loopback 2: 10.1.64.1/18
          + Loopback 3: 10.1.32.1/19
          + Loopback 4: 10.1.16.1/20
          + Loopback 5: 10.1.8.1/21
          + Loopback 6: 10.1.4.1/22
          + Loopback 7: 10.1.2.1/23
          + Loopback 8: 10.1.1.1/24
          + Loopback 9: 10.1.0.129/25
          + Loopback 10: 10.1.0.65/26
  • Tất cả các loopback từ 1->10 tham gia vào RIP
!R2
interface loopback 1
ip add 10.1.128.1 255.255.128.0
interface loopback 2
ip add 10.1.64.1 255.255.192.0
interface loopback 3
ip add 10.1.32.1 255.255.224.0
interface loopback 4
ip add 10.1.16.1 255.255.240.0
interface loopback 5
ip add 10.1.8.1 255.255.248.0
interface loopback 6
ip add 10.1.4.1 255.255.252.0
interface loopback 7
ip add 10.1.2.1 255.255.254.0
interface loopback 8
ip add 10.1.1.1 255.255.255.0
interface loopback 9
ip add 10.1.0.129 255.255.255.128
interface loopback 10
ip add 10.1.0.65 255.255.255.192
exit
!
router rip
network 10.0.0.0
end
!
  • Cấu hình trên R1 sẽ đi đến các subnet loopback vừa tạo có prefix-length từ 20 đến 24 đi theo hướng R4, các interface còn lại đi theo hướng R2 


!Kiểm tra trước khi cấu hình
R1#show ip route 10.0.0.0

Routing entry for 10.0.0.0/8, 10 known subnets Variably subnetted with 10 masks
Redistributing via rip
R 10.1.0.64/26 [120/1] via 192.168.123.2, 00:00:12, Ethernet0/0
R 10.1.0.128/25 [120/1] via 192.168.123.2, 00:00:12, Ethernet0/0
R 10.1.1.0/24 [120/1] via 192.168.123.2, 00:00:12, Ethernet0/0
R 10.1.2.0/23 [120/1] via 192.168.123.2, 00:00:12, Ethernet0/0
R 10.1.4.0/22 [120/1] via 192.168.123.2, 00:00:12, Ethernet0/0
R 10.1.8.0/21 [120/1] via 192.168.123.2, 00:00:12, Ethernet0/0
R 10.1.16.0/20 [120/1] via 192.168.123.2, 00:00:12, Ethernet0/0

R 10.1.32.0/19 [120/1] via 192.168.123.2, 00:00:12, Ethernet0/0
R 10.1.64.0/18 [120/1] via 192.168.123.2, 00:00:12, Ethernet0/0
R 10.1.128.0/17 [120/1] via 192.168.123.2, 00:00:12, Ethernet0/0


Ta thấy 10 loopback vừa tạo đều đi qua đường đấu nối trực tiếp đó là R2 với IP 192.168.123.2. Để cấm 1 subnet không được phép đi qua R2 thì ta chỉ cần cấm không cho R2 quảng bá subnet đó đến R1 qua công Et0/0 là được.
!R1
ip prefix-list LOOPBACK deny 10.0.0.0/8 ge 20 le 24
ip prefix-list LOOPBACK permit 0.0.0.0/0 le 32
!
router rip
distribute-list prefix LOOPBACK in Ethernet0/0
!kiểm tra prefix-list vừa cấu hình có match không


R1#show ip prefix-list detail
Prefix-list with the last deletion/insertion: LOOPBACK
ip prefix-list LOOPBACK: count: 2, range entries: 2, sequences: 5 - 10, refcount: 4 seq 5 deny 10.0.0.0/8 ge 20 le 24 (hit count: 30, refcount: 1) seq 10 permit 0.0.0.0/0 le 32 (hit count: 52, refcount: 1)


!Kiểm tra bảng route
R1#show ip route 10.0.0.0
Routing entry for 10.0.0.0/8, 10 known subnets
Variably subnetted with 10 masks
Redistributing via rip
R 10.1.0.64/26 [120/1] via 192.168.123.2, 00:00:24, Ethernet0/0
R 10.1.0.128/25 [120/1] via 192.168.123.2, 00:00:24, Ethernet0/0
R 10.1.1.0/24 [120/2] via 192.168.14.4, 00:00:04, Ethernet0/2
R 10.1.2.0/23 [120/2] via 192.168.14.4, 00:00:04, Ethernet0/2
R 10.1.4.0/22 [120/2] via 192.168.14.4, 00:00:04, Ethernet0/2
R 10.1.8.0/21 [120/2] via 192.168.14.4, 00:00:04, Ethernet0/2
R 10.1.16.0/20 [120/2] via 192.168.14.4, 00:00:04, Ethernet0/2

R 10.1.32.0/19 [120/1] via 192.168.123.2, 00:00:24, Ethernet0/0
R 10.1.64.0/18 [120/1] via 192.168.123.2, 00:00:24, Ethernet0/0
R 10.1.128.0/17 [120/1] via 192.168.123.2, 00:00:24, Ethernet0/0

Ta thấy các prefix-length từ 20->24 đã đi thông qua R1 và metric =2
6. Lọc route bằng cách hiệu chỉnh AD
Bằng cách cấu hình hiệu chỉnh AD trên R2 sao cho lọc và xóa route 172.16.42.0/24 ra khỏi bảng định tuyến trên R2.
R2#show ip route 172.16.42.0
Routing entry for 172.16.42.0/24
Known via "rip", distance 120, metric 1
Redistributing via rip
Last update from 192.168.24.4 on Ethernet0/1, 00:00:02 ago
Routing Descriptor Blocks:
* 192.168.24.4, from 192.168.24.4, 00:00:02 ago, via Ethernet0/1
Route metric is 1, traffic share count is 1

Ta thấy trong bảng route của R2 có AD hay distance = 120 bây giờ ta sẽ điều chỉnh là 255 thì route 172.16.42.0 sẽ bị xóa bỏ ra khỏi bảng route của R2

!R2

access-list 1 permit 172.16.42.0
access-list 1 deny any
!
router rip
distance 255 0.0.0.0 255.255.255.255 1
end
!

Kiểm tra kết quả
R2#show access-lists
Standard IP access list 1
10 permit 172.16.42.0 (81 matches)
20 deny any (446 matches)
R2#show ip route 172.16.42.0
% Subnet not in table

R2#show ip route rip
Gateway of last resort is not set
172.16.0.0/16 is variably subnetted, 6 subnets, 2 masks
R 172.16.11.0/24 [120/1] via 192.168.123.1, 00:00:22, Ethernet0/0
R 172.16.33.0/24 [120/1] via 192.168.123.3, 00:00:20, Ethernet0/0
R 172.16.41.0/24 [120/1] via 192.168.24.4, 00:00:12, Ethernet0/1
R 172.16.51.0/24 [120/2] via 192.168.123.1, 00:00:22, Ethernet0/0
R 192.168.14.0/24 [120/1] via 192.168.123.1, 00:00:22, Ethernet0/0
                               [120/1] via 192.168.24.4, 00:00:12, Ethernet0/1
R 192.168.15.0/24 [120/1] via 192.168.123.1, 00:00:22, Ethernet0/0

7. Hiệu chỉnh AD theo neighbor
Sử dụng kỹ thuật hiệu chỉnh AD neighbor và cấu hình trên R1 đảm bảo dữ liệu đi từ R1 đến subnet 172.16.41.0/24 bắt buộc phải thông qua R2.

R1#show ip route 172.16.41.0
Routing entry for 172.16.41.0/24
Known via "rip", distance 120, metric 1
Redistributing via rip
Last update from 192.168.14.4 on Ethernet0/2, 00:00:04 ago
Routing Descriptor Blocks:
* 192.168.14.4, from 192.168.14.4, 00:00:04 ago, via Ethernet0/2
Route metric is 1, traffic share count is 1
Ta thấy R1 học được lớp subnet 172.16.41.0/24 thông qua 2 đường:

  • Kết nối trực tiếp R1-R4 với distance 120, metric =1
  • R2 quảng bá đến với distance 120, metric =2. Vì metric R2 không tốt hơn metric của R1 nên hướng kết nối này không được hiển thị trong bảng route của R1. Nên ta điều chỉnh AD = 255 cho hướng kết nối R1-R4 để sub 172.16.41.0/24 ra khỏi bảng route của R1.
!R1
access-list 1 permit 172.16.41.0
access-list 1 deny   any
!router rip
distance 255 192.168.14.4 0.0.0.0 1
end
!

!kiểm tra


R1#show ip route 172.16.41.0
Routing entry for 172.16.41.0/24
Known via "rip", distance 120, metric 2
Redistributing via rip
Last update from 192.168.123.2 on Ethernet0/0, 00:00:12 ago
Routing Descriptor Blocks:
* 192.168.123.2, from 192.168.123.2, 00:00:12 ago, via Ethernet0/0
Route metric is 2, traffic share count is 1
8. Lọc route với offset-list
Sử dụng offset - list và cáu hình trên R4 sao cho R4 đi đến subnet 172.16.11.0/24 của R1 phải thông qua R2.

R4#show ip route 172.16.11.0
Routing entry for 172.16.11.0/24
Known via "rip", distance 120, metric 1
Redistributing via rip
Last update from 192.168.14.1 on Ethernet0/2, 00:00:09 ago
Routing Descriptor Blocks:
* 192.168.14.1, from 192.168.14.1, 00:00:09 ago, via Ethernet0/2
Route metric is 1, traffic share count is 1

Tương tư yêu cầu 7, R4 học subnet 172.16.11.0/24 thông qua R1 và R2. Để subnet 172.16.11.0/24 hiển thị trong bảng định tuyến và thông qua hướng R2, ta có thể chỉnh metric của hướng kết nối R1-R4 là 16 (trong RIP nếu hop count =16 là unreachable ) thì hướng đi này sẽ bị loại bỏ khỏi bảng route. Thay vào đó là hướng đi thông qua R2


!R4
access-list 1 permit 172.16.11.0
access-list 1 deny any
!
router rip
offset-list 1 in 16 Ethernet0/2
end
!


!Kiểm tra
R4#show ip route 172.16.11.0
Routing entry for 172.16.11.0/24
Known via "rip", distance 120, metric 2
Redistributing via rip
Last update from 192.168.24.2 on Ethern
et0/1, 00:00:09 ago
Routing Descriptor Blocks:
* 192.168.24.2, from 192.168.24.2, 00:00:09 ago, via Ethernet0/1
Route metric is 2, traffic share count is 1

Xong!

Máy tính không nhận đúng dung lượng

Có rất nhiều bạn hỏi tại sao máy tính không nhận đúng dung lượng của nhà sản xuất in trên HDD. Chủ đề hôm nay sẽ giải thích vấn đề này.

Bảng chuyển đổi


Nhà sản xuất dùng đơn vị tính là x1000 trong khi đó hệ điều hành thì dùng đơn vị là x1024.




Ví dụ dung lượng HDD của nhà sản xuất 500 GB = 500,000,000,000 B, nhưng thực tế máy tính nhận chỉ có 466 GB thôi. Cách tính là 500,000,000,000/1024/1024/1024 = 466 GB


Tương tư: 1TB của nhà sản xuất thì hệ điều hành 931 GB

Kết quả chụp trên HĐH Win10

 Xong!

Windows, Forfiles - Tìm xóa và giữ lại các file theo thời gian chỉ định

Giới Thiệu: Forfiles của hệ điều hành windows giúp cho chúng ta chọn ra các file theo thời gian chỉ định nào đó và thực hiện các yêu cầu cho các file đã chọn.

Yêu cầu: Tìm và xóa tất cả các file PDF, chỉ giữ lại những file từ ngày 15 tháng 7 năm 2019

Gợi ý: Tạo file .cmd, .bat hoặc chạy trực tiếp file với code mẫu bên dưới
@echo off
set _Folder=98.SCAN
set _path=F:\Syno-FileServer\99.PUBLIC FOLDERs\%_Folder%
set _days=07/15/2019
forfiles /p "%_path%" /s /m *.pdf /D -%_days% /C "cmd /c del /q @path&echo @path >>%_path%\%_Folder%_DelFileList.txt"
@echo on

Giải thích:
thư mục cần tìm dữ liệu để xóa
set _Folder=98.SCAN
đường dẫn đến thư mục khai báo ở trên
set _path=F:\Syno-FileServer\99.PUBLIC FOLDERs\%_Folder%
Cài đặt biến ngày tháng năm. Định dạng mà máy thực hiện: tháng ngày năm. Ở đây chúng ta có thể số ngày cần giữ lại cũng được ví dụ như 15 ngày thì chổ _days=15
set _days=07/15/2019
Thực hiện tìm các file PDF (có thể thay bằng loại file khác hoặc xóa tất cả các file thì *.*) với thời gian cài đặt ở trên tiến hành xóa và lưu vào logfile các file đã xóa
forfiles /p "%_path%" /s /m *.pdf /D -%_days% /C "cmd /c del /q @path&echo @path" >>"%_path%\%_Folder%"_DelFileList.txt

Kết quả:


link tham khảo về Forfiles và forfile del log

Windows, Forfiles - Tìm xóa và giữ lại các file theo thời gian chỉ định

Giới Thiệu: Forfiles của hệ điều hành windows giúp cho chúng ta chọn ra các file theo thời gian chỉ định nào đó và thực hiện các yêu cầu cho các file đã chọn.

Yêu cầu: Tìm và xóa tất cả các file PDF, chỉ giữ lại những file từ ngày 15 tháng 7 năm 2019

Gợi ý: Tạo file .cmd, .bat hoặc chạy trực tiếp file với code mẫu bên dưới

Cisco, Dynamic Multipoint VPN - DMVPN Phase 1 OSPF Routing

Giới thiệu: Trước đây chúng ta đã có chủ đề DMVPN Phase 1 căn bản để thiết lập tunnel giữa các site với nhau. Và trước đó chúng ta đã có chủ đề dùng EIGRP để quảng bá các loopback 0 của các router: R1, R2, R3, đảm bảo rằng các loopback 0 phải ping thấy nhau. Hôm nay chúng ta dùng giao thức OSPF để quảng bá các loopback 0 của các router.

Bài Lab

Các kiến thức sử dụng trong bài: cấu hình DMVPN Phase 1 căn bản, OSPF

1. Kiểm tra trước khi vào cấu hình dùng giao thức OSPF để quảng bá (sử dụng tiếp theo bài DMVPN Phase 1 căn bản)
R1#show dmvpn | begin 172.16.0.
     1 2.2.2.2              172.16.0.2    UP 02:19:26     D
     1 3.3.3.3              172.16.0.3    UP 01:55:56     D

Cisco, RIP Distance Vector Routing Protocol

RIP - Routing Information Protocol là giao thức định tuyến distance vector và là giao thức định tuyến đơn giản nhất trong các giao thức định tuyến.
  • Distance: là khoảng cách, là bao xa và sử dụng metric để tính khoảng cách giữa các router
  • Vector: là hướng đi, đi đến đâu, chúng ta quan tâm vào interface và IP address của router kế tiếp mà chúng gửi dữ liệu đến.
Khảo sát hoạt động của giao thức RIP

Ping test và kết quả trả vào text

Yêu cầu: ping IP 8.8.8.8 và 8.8.4.4 kết quả ping trả về lưu vào file với tên theo cấu trúc ngày giờ hiện + tên máy tính đang ping + IP được ping.

Gợi ý: Tạo file .bat hoặc .cmd  với nội như bên dưới, sau đó chạy file vừa lưu.

@echo off
set _DateTime=%date%_%time%
set _DateTime=%_DateTime: =_%
set _DateTime=%_DateTime::=-%
set _DateTime=%_DateTime:/=_%
set _DateTime=%_DateTime:.=_%
set _hostname=%COMPUTERNAME%
set _output=%_DateTime%_%_hostname%
set _p1=8.8.8.8
set _p2=8.8.4.4
set _n=10
set _path=C:\tmp
ping -n %_n% %_p1% >%_path%\"%_output%_to_%_p1%.txt"
ping -n %_n% %_p2% >%_path%\"%_output%_to_%_p2%.txt"
@echo on



Giải thích:

Lấy ngày giờ hiện tại
set _DateTime=%date%_%time%
set _DateTime=%_DateTime: =_%
set _DateTime=%_DateTime::=-%
set _DateTime=%_DateTime:/=_%
set _DateTime=%_DateTime:.=_%

lấy tên máy tính đang thực hiện lệnh ping và nối với ngày giờ hiện tại
set _hostname=%COMPUTERNAME%
set _output=%_DateTime%_%_hostname%
IP cần ping
set _p1=8.8.8.8
set _p2=8.8.4.4
số lần lặp lại
set _n=10
nơi lưu kết quả ping
set _path=C:\tmp
thực hiện lệnh ping và đẩy kết quả vào file
ping -n %_n% %_p1% >%_path%\"%_output%_to_%_p1%.txt"
ping -n %_n% %_p2% >%_path%\"%_output%_to_%_p2%.txt"

Kết quả:

Ping test và kết quả trả vào text

Yêu cầu: ping IP 8.8.8.8 và 8.8.4.4 kết quả ping trả về lưu vào file với tên theo cấu trúc ngày giờ hiện + tên máy tính đang ping + IP được ping.

Gợi ý: Tạo file .bat hoặc .cmd  với nội như bên dưới, sau đó chạy file vừa lưu.

@echo off
set _DateTime=%date%_%time%
set _DateTime=%_DateTime: =_%
set _DateTime=%_DateTime::=-%
set _DateTime=%_DateTime:/=_%
set _DateTime=%_DateTime:.=_%
set _hostname=%COMPUTERNAME%
set _output=%_DateTime%_%_hostname%
set _p1=8.8.8.8
set _p2=8.8.4.4
set _n=10
set _path=C:\tmp
ping -n %_n% %_p1% >%_path%\"%_output%_to_%_p1%.txt"
ping -n %_n% %_p2% >%_path%\"%_output%_to_%_p2%.txt"
@echo on



Giải thích:

Lấy ngày giờ hiện tại
set _DateTime=%date%_%time%
set _DateTime=%_DateTime: =_%
set _DateTime=%_DateTime::=-%
set _DateTime=%_DateTime:/=_%
set _DateTime=%_DateTime:.=_%

lấy tên máy tính đang thực hiện lệnh ping và nối với ngày giờ hiện tại
set _hostname=%COMPUTERNAME%
set _output=%_DateTime%_%_hostname%
IP cần ping
set _p1=8.8.8.8
set _p2=8.8.4.4
số lần lặp lại
set _n=10
nơi lưu kết quả ping
set _path=C:\tmp
thực hiện lệnh ping và đẩy kết quả vào file
ping -n %_n% %_p1% >%_path%\"%_output%_to_%_p1%.txt"
ping -n %_n% %_p2% >%_path%\"%_output%_to_%_p2%.txt"

Kết quả:

Lấy ngày giờ hệ trên Windows bằng CLI

Giới thiệu: Đôi khi chúng ta cần lấy ngày giờ hiện tại để thêm vào các script nhằm mục đích mà chúng ta muốn. Ví dụ như backup và đặt tên file theo ngày giờ hiện tại, ping đẩy kết quả ping vào file text,... nói chung là nhiều thứ trên đời. Hôm nay ta khởi đầu với bài lấy ngày giờ hiện tại của máy tính hiện tại đưa vào biến.

Yêu cầu: Lấy ngày giờ hiện tại và thay:
  • " " (dấu cách) thành "_"
  • ":" (dấu 2 chấm) thành "-"
  • "/" (dấu sẹt sắc) thành "-"
  • "." (dấu 1 chấm) thành "_" và đưa ngày tháng năm vào biến sau đó in ra màn hình để test.
Code mẫu
@echo off
set _DateTime=%date%%time%
set _DateTime=%_DateTime: =_%
set _DateTime=%_DateTime::=-%
set _DateTime=%_DateTime:/=-%
set _DateTime=%_DateTime:.=_%
set _DateTime=%_DateTime:~4,10%
Echo  %_DateTime%
@echo on

Giải thích: 

C:\Users\Admin>@echo off
set _DateTime=%date%%time%
in ra kết quả ban đầu chưa thực hiện thay thế theo yêu cầu đề bài
Echo %_DateTime%
Wed 08/07/2019 9:42:33.05
set _DateTime=%_DateTime: =_%
set _DateTime=%_DateTime::=-%
set _DateTime=%_DateTime:/=-%
set _DateTime=%_DateTime:.=_%

in ra kết quả sau khi đã thực hiện thay thế theo yêu cầu đề bài
Echo %_DateTime%
Wed_08-07-2019_9-42-33_05
set _DateTime=%_DateTime:~4,10%
thực hiện lấy bắt đầu từ vị trí thứ 4lấy 10 ký tự trong biến ngày giờ
in kết quả ra màn hình

Echo %_DateTime%
08-07-2019

Xong!

Lấy ngày giờ hệ trên Windows bằng CLI

Giới thiệu: Đôi khi chúng ta cần lấy ngày giờ hiện tại để thêm vào các script nhằm mục đích mà chúng ta muốn. Ví dụ như backup và đặt tên file theo ngày giờ hiện tại, ping đẩy kết quả ping vào file text,... nói chung là nhiều thứ trên đời. Hôm nay ta khởi đầu với bài lấy ngày giờ hiện tại của máy tính hiện tại đưa vào biến.

Yêu cầu: Lấy ngày giờ hiện tại và thay:
  • " " (dấu cách) thành "_"
  • ":" (dấu 2 chấm) thành "-"
  • "/" (dấu sẹt sắc) thành "-"
  • "." (dấu 1 chấm) thành "_" và đưa ngày tháng năm vào biến sau đó in ra màn hình để test.

Tìm hiểu về Spanning Tree Protocol

I. Giới thiệu: Spanning Tree Protocol - STP là giao thức hoạt động trên switch mà giúp tránh loops. STP là một trong những giao thức mà chúng ta phải biết và hiểu rỏ về nó nếu làm về network. Hôm nay chúng ta tìm hiểu về STP trên thiết bị switch của cisco.

II. Tìm hiểu và ví dụ:
Tại sao cần STP?


Ở sơ đồ trên có 2 switch chúng được nối với nhau bằng một sợ cáp (không có STP ở đây), nếu có vấn đề về cáp thì 2 switch sẽ không kết nối được người ta gọi là Single Point of Failure - SPOF, để dự phòng thì chúng ta đấu thêm 1 cáp nữa lúc này sẽ có loop xảy ra ở đây.


Trước khi đi vào bài này các bạn phải biết về ARP Hoạt động của switch

Sw01
1. PC01 gửi ARP request vì nó tìm MAC address của PC02. ARP request là gói broadcast frame.
2. Sw01 sẽ forward broadcast frame này trên tất cả các cổng trừ cổng nhận vào
3. Sw02 sẽ nhận được cả hai gói broadcast frame.

Sw02
1. Sw02 sẽ forward broadcast frame nhận được trên tất cả các cổng trừ cổng nhận vào
2. Có nghĩa là frame nhận được trên e0/1 sẽ forward ra trên cổng e0/2
3. Frame nhận được trên cổng e0/2 cũng sẽ forward đến cổng e0/1

Đã có loop xảy ra vì cả 2 switch cứ forward liên tục cho đến khi:
  • Tháo 1 sợ cáp ra
  • Có 1 switch bị treo vì đầy bộ nhớ.
Ethernet frame thì không có TTL (Time to Live) nên gói tin sẽ bị lặp đi lặp lại và có rất nhiều gói tin ARP request frame là broadcast. Hơn nữa switch sẽ biết được đâu là MAC address nó cứ forward đi.

STP chống loop như thế nào! STP hoạt động thông qua:
  • 4 bước hoạt động:
- Bầu chọn root - switch (Root-Bridge)
- Bầu chọn các root - port (NON-Root bridge)
- Bầu chọn designated - port
- Khóa các port để chống loop (chọn ra alternated - port, hay block - port)
  • 3 nguyên tắc so sánh:
- Path cost
- Sender bridge ID
- Sender port ID
Xét ví dụ cụ thể



Chúng ta có 3 switch được đấu nối vòng tròn với nhau để dự phòng, và cũng có nghĩa là sẽ có loop trong ở đồ này. Để đơn giản hơn ta ví dụ các switch có MAC address tương ứng:
  • Switch A: AAA
  • Switch B: BBB
  • Switch C: CCC
Khi spanning tree được enable thì các switch sẽ gửi BPDU - Bridge Protocol Data Unit. Trong BPDU có chứa nhiều thông tin trong đó có 2 thông tin mà chúng ta cần quan tâm trong trường hợp này là: MAC address (độ dài 6 bytes) và Priority(độ dài 2 byte, có giá trị 0 - 65535). MAC address và priority sẽ tạo nên bridge ID và đây là giá trị duy nhất dùng để định danh trong STP, và brigde ID sẽ được gửi qua lại giữa các switch với nhau. 

1. Bầu chọn root - switch: 
Spanning-tree sẽ tính toán và chọn ra có bridge ID nhỏ nhất để làm root bridge. Bình bầu theo nguyên tắc:
  • Switch nào có priority (mặt định là 32768) nhỏ nhất sẽ làm root switch.
  • Nếu bằng nhau thì xét MAC address (MAC nhỏ nhất là: so sánh giá trị hexa từ trái sang phải switch nào có MAC nhỏ nhất sẽ làm root switch)
Ở đây Switch A là Root - switch, và các port của root-switch thường là designated port, nghĩa là chúng ở trạng thái forwarding. Định kỳ 2 giây switch sẽ gửi BPDU ra cổng 1 lần.

2. Bình bầu root - port:
  • Root - switch không tham gia bình bầu root - port.
  • Trên các non-root switch sẽ chọn ra các port cung cấp đường về root-switch mà nó đang xét có tổng giá trị path-cost tính lũy (cộng dồn) là nhỏ nhất. (Ví dụ trên: chúng ta thấy Sw B có 2 đường về Sw A đó là thông qua cổng E0/0 và E0/1, E0/0 nhỏ hơn sẽ được chọn, T.tự port E0/2 trên Sw C sẽ được chọn)
  • Nếu path-cost bằng nhaucùng sender ID: cổng nào có port sender ID (đấu nối với cổng đầu xa) nhỏ hơn sẽ là root-port.
  • Mỗi non-root switch chỉ có duy nhất 1 root-port
Vậy root-port cần chọn sẽ là: 
         - Switch B: E0/0
         - Switch C: E0/2
3. Bầu chọn designated port:
  • Tất cả các port của root switch là designated-port
  • Trên mỗi phân đoạn đối diện root-port là designated port (theo 1 chiều, không có hướng ngược lại)
  • Mỗi link chỉ có 1 designated port
  • Là port cung cấp đường về root-switch mà trên phân đoạn đang xét có tổng path-cost tích lũy là nhỏ nhất. Nếu tổng path-cost bằng nhau thì xét:
           - Khác switch: Sender Bridge ID = MAC address + Priority để xác định, cổng nào có bridge ID (bridge-id của switch láng riềng) nhỏ hơn làm designated port;
             - Cùng switch: Port ID, cổng nào có port ID nhỏ hơn làm designated port.
Vậy designated-port sẽ là:
         - Switch A: E0/0, E0/2
         - Switch B: E0/14. Chọn block-port / alternated port:
         Là port chưa phân công vai trò (không phải là root port hay designated port)Vậy block-port là
Switch C: E0/1



Bây giờ ta thêm switch D đấu nối vào switch C với 2 dây như sơ đồ bên dưới:


Trường hợp này Switch D có cùng path-cost tích lũy, cùng Sender Bridge ID;
Xét port sender ID: ta thấy port sender ID E0/0 nhỏ hơn E0/3 nên E0/0 của Switch D sẽ là root port.
         Vậy Root-port là
         Switch D: E0/0
Tương tự có có được cổng E0/3 của switch D là block port do dựa vào port ID



III. Bộ định thời gian Timer STP:
STP sử dụng các bộ định thời gian chính là: Hello timer, forward delay timer, max age timer.
  • Hello timer: Mặt định cứ 2 giây 1 lần root switch gửi BPDU ra các cổng 1 lần;
  • Forward delay timer: Mặt định 15 giây là khoảng thời gian STP chuyển các trạng thái Listening, Learning trước khi sang trạng thái Forwarding.
  • Max age timer:  Gía trị mặt định 20 giây. Nghĩa là khi 1 cổng đang nhận BPDU bỗng nhiên nó nhận BPDU kém hơn (interior BPDU), cổng sẽ chờ hết thời gian Max-age rồi mới thực hiện các hoạt để hội tụ thích hợp.
IV. Các trạng thái cổng trong STP:

         Disable: Cổng tham gia STP không active (không up/up) hay down;
         Blocking: Đang bị khóa, nhận BPDU, không gửi BPDU, không học MAC, không forward frame (20 giây);
         Listening: Nhận và gửi BPDU, không học MAC, không forward frame (15 giây);
         Learning: Nhận và gửi BPDU, học MAC, không forward frame (15 giây);
         Forward: Nhận và gửi BPDU, học MAC, forward frame.



Nhận xét: Với ví dụ trên để cổng E0/1 của switch C chuyển từ trạng thái alternated port sang trạng thái forward thì:
  • Nếu bị đức đường link từ switch C nối về switch A (trực tiếp) thì mất 30 giây = 15s listening + 15s learning (trường hợp này không cần dùng thời gian max-age)
  • Nếu bị đức đường link từ switch C nối về switch A (gián tiếp) thì mất 50 giây = 20s max-age + 15s listening + 15s learning.

Đến đây chúng ta có thể giải thích tại sao khi switch đã khởi động xong mà cắm dây mạng vào phải 1 khoảng thời là 30 giây đèn trạng thái mới chuyển từ màu cam sang màu xanh.

Tóm tắt bài học:




Cấu hình:
- Bật STP trên các vlan
spanning-tree vlan vlan-id

- Hiệu chỉnh priority cho switch
spanning-tree vlan vlan-id priority priority

- Cấu hình switch trở thành root switch
spanning-tree vlan vlan-id root {primary/secondary}

- Hiệu chỉnh trí giá cost trên cổng
spanning-tree vlan vlan-id cost cost

- Hiệu chỉnh port - priority trên cổng
spanning-tree vlan vlan-id  port-priority priority

- Hiệu chỉnh timer của STP
spanning-tree vlan vlan-id hello-time seconds
spanning-tree vlan vlan-id forward-time seconds
spanning-tree vlan vlan-id max-age seconds

- Chọn mode STP
spanning-tree mode {pvst |  rapid-pvst | mst}

Mặc định được bật trên các switch cisco hoạt động ở chế độ pVST + (pvst)

- Kiểm tra thông số hoạt động của STP
show spanning-tree vlan vlan-id
 
Xong!

Tìm hiểu về Spanning Tree Protocol

I. Giới thiệu: Spanning Tree Protocol - STP là giao thức hoạt động trên switch mà giúp tránh loops. STP là một trong những giao thức mà chúng ta phải biết và hiểu rỏ về nó nếu làm về network. Hôm nay chúng ta tìm hiểu về STP trên thiết bị switch của cisco.

II. Tìm hiểu và ví dụ:
Tại sao cần STP?


Ở sơ đồ trên có 2 switch chúng được nối với nhau bằng một sợ cáp (không có STP ở đây), nếu có vấn đề về cáp thì 2 switch sẽ không kết nối được người ta gọi là Single Point of Failure - SPOF, để dự phòng thì chúng ta đấu thêm 1 cáp nữa lúc này sẽ có loop xảy ra ở đây.

Reset Permission Folder On Windows

Giới thiệu: Vì lý do gì đó mà forlder trong windows có permission không như chúng ta mong muốn, chúng ta reset về mặt định rồi làm lại theo ý mình, tuy nhiên với GUI thao tác nhiều mất công có khi lại lâu nữa và nếu dữ liệu quá nhiều việc thực hiện sẽ mất khá nhiều thời gian, có khi không thể thực hiện trong giờ làm việc được vì sẽ ảnh hưởng đến tốc độ truy của người khác trên FileServer. Là những IT lười biếng nên dùng CLI thay cho GUI và có thể lập lịch định thời gian cho máy tính tự làm.

Yêu cầu:
Reset folder C:\VIDU về mặt định và thêm Everyone full control và áp xuống tất các thư mục bên trong

Code mẫu
@echo off
set _path="C:\VIDU"
REM take ownership and reset permissions
TAKEOWN /f %_path% /r /d y
ICACLS %_path% /reset /T
REM grant full control to administrators
ICACLS %_path% /grant:r "BUILTIN\ADMINISTRATORS":(OI)(CI)F
ICACLS %_path% /grant:r "Users":(OI)(CI)F
ICACLS %_path% /grant:r "Creator owner":(OI)(CI)F
ICACLS %_path% /grant:r "System":(OI)(CI)F
ICACLS %_path% /grant:r "Everyone":(OI)(CI)F
REM set inheritance on everything below
ICACLS %_path% /inheritance:r
@echo on

Gợi ý hướng giải quyết.
1. Chạy cmd Runas quyền Administrator sau đó dán đoạn code bên trên vào màn hình command line.
2. Tạo file có đuôi .bat, .cmd sau đó lập lịch để Windows tự làm theo lịch đã định.



Reset Permission Folder On Windows

Giới thiệu: Vì lý do gì đó mà forlder trong windows có permission không như chúng ta mong muốn, chúng ta reset về mặt định rồi làm lại theo ý mình, tuy nhiên với GUI thao tác nhiều mất công có khi lại lâu nữa và nếu dữ liệu quá nhiều việc thực hiện sẽ mất khá nhiều thời gian, có khi không thể thực hiện trong giờ làm việc được vì sẽ ảnh hưởng đến tốc độ truy của người khác trên FileServer. Là những IT lười biếng nên dùng CLI thay cho GUI và có thể lập lịch định thời gian cho máy tính tự làm.

Yêu cầu:
Reset folder C:\VIDU về mặt định và thêm Everyone full control và áp xuống tất các thư mục bên trong

Cisco, Dynamic Multipoint VPN - DMVPN Phase 1 EIGRP Routing

Giới thiệu: Trước đây chúng ta đã có chủ đề DMVPN Phase 1 căn bản để thiết lập tunnel giữa các site với nhau. Hôm nay chúng ta cùng nhau đi tiếp sau khi tunnel đã thiết lập chúng sẽ dùng giao thức EIGRP để quảng bá các loopback 0 của các router: R1, R2, R3, đảm bảo rằng các loopback 0 phải ping thấy nhau.

Bài Lab

Các kiến thức sử dụng trong bài: cấu hình DMVPN Phase 1 căn bản, EIGRP

Cisco, Dynamic Multipoint VPN - DMVPN Phase 1 Basic Configuration - HUB, SPOKES

Giới thiệu: Ở bài GRE VPN căn bản vì đó là GRE theo kiểu kết nối point-to-point nên có bao nhiêu site thì ở Router chính phải tạo ra bấy nhiêu tunnel. Tiếp theo chúng ta tìm hiểu về multipoint GRE - mGRE hay Dynamic Multipoint VPN - DMVPN cho phép tạo một tunnel nhưng có thể kết nối được nhiều site, DMVPN có rất nhiều phase và mỗi phase có cách hoạt động sẽ khác nhau. Chủ đề này chúng ta chỉ dừng lại các router R1, R2, R3 thiết lập được tunnel.

Bài Lab:


Các kiến thứ dùng trong bài: OSPF, DMVPN

/*header slide*/