/*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, Port Security

Giới thiệu:

Trong một số trường hợp chúng ta cần kiểm soát sự truy xuất của client vào một hệ thống mạng nhằm giảm thiểu rủi ro (MAC flooding là một kỹ thuật tấn công phổ biến trong mạng LAN) cho hệ thống mạng. Cách đơn giản để quản lý client là dựa vào địa chỉ MAC của client đó. Catalyst Switch Cisco cung cấp tính năng port security giúp kiểm khiển truy cập của một client trên port của switch dựa vào địa chỉ MAC của nó.

Mặc định switch cho phép và học tất cả các địa chỉ MAC trên một interface, chúng ta có thể thay đổi cách hành sử này với tính năng port security (bảo mật cổng, bảo mật lớp 2 trên switch).


Sơ đồ trên có 2 máy tính kết nối vào một switch bình thường (là switch không thể quản lý được, chỉ gắng vào là chạy) và switch được nối với Cisco Switch cổng Et0/0, lúc này trên cổng  Et0/0 của Cisco Switch học được địa chỉ MAC của PC1 và PC2.

Ví dụ chúng ta cho phép Cisco Switch chỉ học một địa chỉ MAC trên cổng Et0/0 mà thôi, các địa chỉ khác sẽ bị vi phạm (violation) và chúng ta có thể đưa ra cách hành xử cho các MAC vi phạm này.

Ngoài việc giới hạng số lượng MAC học trên cổng chúng ta có thể cho phép lọc-Filter địa chỉ MAC, tức là chỉ cho phép một hoặc một nhóm các địa chỉ MAC cụ thể nào đó, các địa chỉ khác ngoài danh sách cho phép sẽ bị vi phạm sẽ bị loại bỏ.

Sơ đồ Lab:

Các kiến thức sử dụng trong bài: Spanning portfast, port security

YỀU CẦU:
1. Đấu nối, đặt IP như hinh và cấu hình spanning portfast (hội tụ nhanh trong việc kiểm tra) trên tất cả các interface của switch.
2. Enable tính năng port security trên cổng Et0/0 của cisco switch
3. Chỉ cho phép duy nhất địa chỉ MAC 0050.7966.6803 của PC1 kết nối vào cổng Et0/0 của cisco switch.
4. Nếu không vi phạm (số PC < = 2) port sẽ tự động phục hồi khỏi trạng thái lỗi sau 30 giây.
5. Đảm bảo cisco switch chỉ cho phép 2 PC đầu tiên kết nối vào cổng Et0/0 của cisco switch.

THỰC HIỆN:
1. Đấu nối, đặt IP như hinh và cấu hình spanning portfast (hội tụ nhanh trong việc kiểm tra) trên tất cả các interface của switch.

PC1:
VPCS> set pcname PC1
PC1> ip 192.168.1.1/24 192.168.1.254
Checking for duplicate address...
PC1 : 192.168.1.1 255.255.255.0 gateway 192.168.1.254

PC2:
VPCS> set pcname PC2
PC2> ip 192.168.1.2/24 192.168.1.254
Checking for duplicate address...
PC1 : 192.168.1.2 255.255.255.0 gateway 192.168.1.254

Normal Switch:
hostname Normal_sw
spanning-tree portfast default 

Cisco Switch:
hostname Cisco_sw
spanning-tree portfast default
!
interface Vlan1
ip address 192.168.1.254 255.255.255.0
no shutdown
end
write


2. Enable tính năng port security trên cổng Et0/0 của cisco switch

Cisco Switch:
interface Ethernet0/0
 switchport mode access
 switchport port-security

Kiểm tra:
Cisco_sw#show run int et0/0
Building configuration...
Current configuration : 92 bytes
!
interface Ethernet0/0
 switchport mode access
 switchport port-security
 duplex auto
end
Port security đã được cấu hình trên cổng Et0/0

Cisco_sw#show port-security interface Et0/0
Port Security                            : Enabled
Port Status                               : Secure-up
Violation Mode                         : Shutdown
Aging Time                               : 0 mins
Aging Type                               : Absolute
SecureStatic Address Aging    : Disabled
Maximum MAC Addresses      : 1
Total MAC Addresses              : 1
Configured MAC Addresses    : 0
Sticky MAC Addresses            : 0
Last Source Address:Vlan       : aabb.cc00.2000:1
Security Violation Count          : 0

Với lệnh show port-security interface Et0/0 chúng ta tạm hiểu là Port security đã được bật; trạng thái hiện tại là up; số lượng MAC cho chép học là 1, nếu số lượng MAC lớn hơn (sẽ vi phạm -Violation) thì cổng sẽ bị Shutdown (mặc định tổng số lượng MAC cho phép là 1 và khi bị vi phạm các điều kiện sẽ bị shutdown).

Với cấu hình trên nếu địa chỉ MAC nào đến trước sẽ được cho phép, nếu có MAC thứ 2 đi qua port sẽ shutdown.

3. Chỉ cho phép duy nhất địa chỉ MAC 0050.7966.6803 của PC1 kết nối vào cổng Et0/0 của cisco switch.

Nhận xét trước khi cấu hình: Ta thấy Cisco_switch được nối với Normal_switch thông qua cổng Et0/0, với yêu cầu là chỉ cho phép duy nhất MAC 0050.7966.6803 đi qua nhưng thực tế trên công Et0/0 của Cisco_switch phải cho phép địa chỉ MAC của Normal switch và MAC của PC1. Vậy số lượng MAC tối đa (Maximum MAC Addresses) trong trường hợp này là 2.

Để kiểm tra địa chỉ MAC của cổng Et0/0 trên Normal_Switch chúng ta dùng lệnh: show interface Et0/0

Normal_Switch:
Normal_sw#show interface Et0/0
Ethernet0/0 is up, line protocol is up (connected)
  Hardware is AmdP2, address is aabb.cc00.2000 (bia aabb.cc00.2000)
  {..}

Cấu hình:
Cisco Switch:
interface Ethernet0/0
shutdown
switchport port-security maximum 2
switchport port-security mac-address 0050.7966.6803
switchport port-security mac-address aabb.cc00.2000
no shutdown
end

Nên shutdown port cần cấu hình trước khi cấu hình.

Với các cấu hình cho phép chỉ định một địa chỉ MAC cụ thể như vậy chúng ta gọi là cấu hình tĩnh, ngoài ra chúng ta có cách cấu hình để switch tự học và lưu lại các địa chỉ MAC đầu tiên rồi đưa vào running-config (tham khảo ở mục 5 trong bài lab này)
Kiểm tra:


Cisco_sw#show port-security interface et0/0
Port Security                 : Enabled
Port Status                    : Secure-up
Violation Mode              : Shutdown
Aging Time                    : 0 mins
Aging Type                    : Absolute
SecureStatic Address Aging : Disabled
Maximum MAC Addresses      : 2
Total MAC Addresses              : 2
Configured MAC Addresses    : 2
Sticky MAC Addresses            : 0
Last Source Address:Vlan       : 0050.7966.6803:1
Security Violation Count          : 0

Maximum MAC Addresses bây giờ là 2 đã đúng yêu cầu đặt ra.

PC1> ping 192.168.1.254
84 bytes from 192.168.1.254 icmp_seq=1 ttl=255 time=0.639 ms
84 bytes from 192.168.1.254 icmp_seq=2 ttl=255 time=0.974 ms
84 bytes from 192.168.1.254 icmp_seq=3 ttl=255 time=0.995 ms
84 bytes from 192.168.1.254 icmp_seq=4 ttl=255 time=1.039 ms
84 bytes from 192.168.1.254 icmp_seq=5 ttl=255 time=0.779 ms
PC1 ping đến 192.168.1.254 là thành công

Cisco_sw#show port-security interface Et0/0 address 
               Secure Mac Address Table
-----------------------------------------------------------------------------
Vlan    Mac Address       Type                          Ports   Remaining Age
                                                                   (mins) 
----    -----------       ----                          -----   -------------
   1    0050.7966.6803    SecureConfigured              Et0/0        -
   1    aabb.cc00.2000    SecureConfigured              Et0/0        -
-----------------------------------------------------------------------------
Total Addresses: 2

Cách học địa chỉ MAC trên cổng Et0/0 là do cấu hình tĩnh

Thử dùng PC2 để ping đến 192.168.1.254
PC2> ping 192.168.1.254
host (192.168.1.254) not reachable
PC2> 
Kết quả không thành công.

Quan sát trên Cisco_switch chúng ta thấy lỗi như bên dưới
Cisco_sw#
*May 12 07:21:58.886: %PM-4-ERR_DISABLE: psecure-violation error detected on Et0/0, putting Et0/0 in err-disable state
*May 12 07:21:58.886: %PORT_SECURITY-2-PSECURE_VIOLATION: Security violation occurred, caused by MAC address  050.7966.6804 on port Ethernet0/0.
*May 12 07:21:59.887: %LINEPROTO-5-UPDOWN: Line protocol on Interface Ethernet0/0, changed state to down
*May 12 07:22:00.888: %LINK-3-UPDOWN: Interface Ethernet0/0, changed state to down

Thông trên chúng ta hiểu là: Vi phạm điều kiện port security nên Interface Ethernet0/0 được đưa vào trạng thái là err-disable  đã có địa chỉ 050.7966.6804 đi vào cổng Et0/0 và trạng thái hiện tại là down

Noted: các hành xử khi phạm port security:

  • Shutdown: Khi vi phạm port bị shutdown và đưa vào trạng thái err-disabled
  • Retrict: Khi bị vi phạm port vẫn up, tuy nhiên tất cả các frame từ địa chỉ MAC vi phạm điều kiện sẽ bị drop và gửi ra SNMP trap, syslog.
  • Protect: Khi bị vi phạm port vẫn up, nhưng không gửi ra SNMP hay syslog.


Cisco_sw#show interfaces status 
Port      Name               Status       Vlan       Duplex  Speed Type
Et0/0                        err-disabled 1            auto   auto unknown
Et0/1                        connected    1            auto   auto unknown
Et0/2                        connected    1            auto   auto unknown
Et0/3                        connected    1            auto   auto unknown
với lệnh show interfaces status chúng ta thấy được trạng thái của các port trong đó có Et0/0

Cisco_sw#show interfaces status err-disabled
Port      Name               Status         Reason               Err-disabled Vlans
Et0/0                        err-disabled     psecure-violation
Hoặc chỉ các port nào có trạng thái là err-disable mới hiện thị ra thì dùng lệnh show interfaces status err-disabled

Trên PC1 kiểm tra ping đến 192.168.1.254
PC1> ping 192.168.1.254
192.168.1.254 icmp_seq=1 timeout
192.168.1.254 icmp_seq=2 timeout
192.168.1.254 icmp_seq=3 timeout
192.168.1.254 icmp_seq=4 timeout
192.168.1.254 icmp_seq=5 timeout
PC1 cũng không ping đến được vì port Et0/0 của cisco switch đang bị down


Hướng khắc phục.
Cisco_sw:
interface Et0/0
shutdown
no shutdown
P/s: phải đủ 2 dòng lệnh shutdown trước và no shutdown sau nhé.

Cisco_sw#show ip interface brief 
Interface              IP-Address      OK? Method Status                Protocol
Ethernet0/0            unassigned      YES unset  up                    up   
Ethernet0/1            unassigned      YES unset  up                    up   
Ethernet0/2            unassigned      YES unset  up                    up   
Ethernet0/3            unassigned      YES unset  up                    up   
Vlan1                  192.168.1.254   YES manual up                    up  
Bây giờ trạng thái của Et0/0 đã up trở lại

4. Nếu không vi phạm (số PC < = 2) port sẽ tự động phục hồi khỏi trạng thái lỗi sau 30 giây.

Cisco Switch (ở mode config):
errdisable recovery cause all
errdisable recovery interval 30

Cấu hình trên ý là tất cả các trạng thái lỗi nếu là errdisable thì sẽ tự động phục hồi trạng thái lỗi nếu không có vi phạm nào trong 30 giây.

Kiểm tra cấu hình
Cisco_sw#show  run | include errdisable
errdisable recovery cause udld
errdisable recovery cause bpduguard
errdisable recovery cause security-violation
errdisable recovery cause channel-misconfig (STP)
errdisable recovery cause pagp-flap
errdisable recovery cause dtp-flap
errdisable recovery cause link-flap
errdisable recovery cause sfp-config-mismatch
errdisable recovery cause gbic-invalid
errdisable recovery cause l2ptguard
errdisable recovery cause psecure-violation
errdisable recovery cause port-mode-failure
errdisable recovery cause dhcp-rate-limit
errdisable recovery cause pppoe-ia-rate-limit
errdisable recovery cause mac-limit
errdisable recovery cause unicast-flood
errdisable recovery cause vmps
errdisable recovery cause storm-control
errdisable recovery cause inline-power
errdisable recovery cause arp-inspection
errdisable recovery cause link-monitor-failure
errdisable recovery cause oam-remote-failure
errdisable recovery cause loopback
errdisable recovery cause psp
errdisable recovery interval 30

Tạo lỗi bằng cách trên PC2 ping đến 192.168.1.254
PC2> ping 192.168.1.254
host (192.168.1.254) not reachable

Quan sát thông báo trên Cisco_Switch:
Cisco_sw#
*May 12 08:26:15.594: %PM-4-ERR_DISABLE: psecure-violation error detected on Et0/0, putting Et0/0 in err-disable state
*May 12 08:26:15.594: %PORT_SECURITY-2-PSECURE_VIOLATION: Security violation occurred, caused by MAC address 0050.7966.6804 on port Ethernet0/0.
*May 12 08:26:16.594: %LINEPROTO-5-UPDOWN: Line protocol on Interface Ethernet0/0, changed state to down
*May 12 08:26:17.595: %LINK-3-UPDOWN: Interface Ethernet0/0, changed state to down
*May 12 08:26:45.590: %PM-4-ERR_RECOVER: Attempting to recover from psecure-violation err-disable state on Et0/0
*May 12 08:26:47.594: %LINK-3-UPDOWN: Interface Ethernet0/0, changed state to up
*May 12 08:26:48.599: %LINEPROTO-5-UPDOWN: Line protocol on Interface Ethernet0/0, changed state to up

Port bị đưa vào trạng thái down lúc 08:26:17 và sau 30 giây (08:26:47) đã tự đội phục hồi.

5. Đảm bảo cisco switch chỉ cho phép 2 PC đầu tiên kết nối vào cổng Et0/0 của cisco switch.

Cấu hình:
Cisco_sw:
no switchport port-security mac-address 0050.7966.6803
no switchport port-security mac-address aabb.cc00.2000
switchport port-security mac-address sticky

Kiểm tra:
PC2> ping 192.168.1.254
84 bytes from 192.168.1.254 icmp_seq=1 ttl=255 time=0.708 ms
84 bytes from 192.168.1.254 icmp_seq=2 ttl=255 time=1.053 ms
84 bytes from 192.168.1.254 icmp_seq=3 ttl=255 time=0.852 ms
84 bytes from 192.168.1.254 icmp_seq=4 ttl=255 time=1.066 ms
84 bytes from 192.168.1.254 icmp_seq=5 ttl=255 time=1.004 ms

Kết quả PC2 ping thành công.

Cisco_sw#show port-security interface ethernet 0/0 address 
               Secure Mac Address Table
-----------------------------------------------------------------------------
Vlan    Mac Address       Type                          Ports   Remaining Age
                                                                   (mins) 
----    -----------       ----                          -----   -------------
   1    0050.7966.6804    SecureSticky                  Et0/0        -
   1    aabb.cc00.2000    SecureSticky                  Et0/0        -
-----------------------------------------------------------------------------
Total Addresses: 2

Có 2 địa chỉ MAC đã được học thông qua Sticky.

Hy vọng sẽ giúp được cho bạn nào đó cần và áp dụng vào công việc của mình một cách hiệu quả.

Xong!
P/s: Port security thường được cấu hình trên các switch đấu vào các thiết bị đầu cuối nhé các bạn.

Setup NTP Server In Windows Server

Nhiều khi chúng ta thấy rằng giờ của máy tính không đúng (chậm hơn) với giờ hiện tại, giờ trên điện thoại hay không thống nhất của các thiết bị trong cùng hệ thống. Hôm nay chúng tôi hướng dẫn các bạn cách thay đổi NTP server hiện tại trên hệ điều hành Windows.

Yêu cầu:
1. Cài đặt trên Primary Domain Controller
2. Cách đồng bộ giờ từ máy con thủ công
3. Đồng bộ thông qua GPO trong môi trường domain controller

Thực hiện:
1. Cài đặt trên Primary Domain Controller

Kiểm tra máy tính nào là Primary Domain Controller - PDC bằng cách thực hiện lệnh dsquery server -hasfsmo pdc trên command prompt

C:\Users\Administrator>dsquery server -hasfsmo pdc
"CN=Server-PDC,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,
DC=Khanhvc,DC=com"

Trên PDC (trong lab này PDC có tên Server-PDC) mở PowerShell với quyền Administrator và thực hiện lệnh

w32tm /config /manualpeerlist:time.google.com /syncfromflags:MANUAL /reliable:yes /update
Stop-Service w32time
Start-Service w32time

Hoặc
w32tm /config /manualpeerlist:time.google.com /syncfromflags:MANUAL
Stop-Service w32time
Start-Service w32time


Ở đây chúng thôi cài đặt server NTP cần lấy giờ là time.google.com, các bạn có thể thay thế bằng server khác như: pool.ntp.org, ...

Kiểm tra sau khi thực hiện thay đổi, mở regedit.exe theo đường dẫn bên dưới.


Ta thấy NTP server trong regedit đã thay đổi

Noted: Phải đảm bảo rằng PDC và internet đã được mở port 123 protocol UDP trên firewall.



Thực hiện trên PowerShell
netsh advfirewall firewall add rule name="Allow Port 123 UDP" dir=in action=allow protocol=UDP localport=123

Troubleshooting:
w32tm /query /status
w32tm /query /peers
w32tm /query /source
w32tm /stripchart /computer:time.google.com /samples:5 /dataonly

Stop-Service w32time
w32tm /unregister
w32tm /register
Start-Service w32time



2. Cách đồng bộ giờ từ máy con thủ công

Mở command prompt với run as administrator từ thực hiện lệnh: net time \\192.168.99.10 /set /y
C:\Users\administrator>net time \\192.168.99.10 /set /y
Current time at \\192.168.99.10 is 5/5/2020 10:42:59 AM
The command completed successfully.

Dòng lệnh trên có nghĩa là lấy giờ của server 192.168.99.10 cài đặt trên máy hiện tại, và nhấn Y để xác nhận việc đồng bộ giờ

3. Đồng bộ thông qua GPO trong môi trường domain controller:


Hy vọng giúp được các bạn giải quyết vấn đề không thống nhất giờ trong hệ thống Windows.

Xong!

Proxy ARP, Static ARP

Proxy ARP là tính năng cho phép router trả lời dùm ARP request của lớp mạng mà nó biết. Để hiểu rỏ hơn ta xét ví dụ ở sơ đồ mạng bên dưới 



+ PC1 có subnet mask /24;
+ PC2 có subnet mask /8. 
  • Khi PC1 muốn kết nối đến server 10.2.2.100 thì quá trình kết nối sẽ xảy ra các bước là:
  1. PC1 sẽ so sánh IP và subnet mask của nó với địa chỉ IP của server (ví dụ này là 10.2.2.100) và nó thấy rằng server là khác lớp mạng với nó
  2. PC1 muốn đến được server (lớp mạng khác) thì bắt buộc phải thông qua default gateway (10.1.1.254)
  3. PC1 kiểm tra trong ARP thử có dữ liệu nào cho 10.1.1.254 không nếu không có sẽ gửi ARP request
  4. R254 sẽ trả lời ARP request và gửi MAC của nó là của interface Et0/0

  • Khi PC2 muốn kết nối đến Server thì:
  1. PC2 sẽ so sánh IP và subnet mask của nó với IP của server và nó thấy rằng server và nó cùng subnet
  2. PC2 kiểm tra trong ARP thử có dữ liệu nào cho 10.2.2.254 không nếu không có sẽ gửi ARP request
  • Khi proxy ARP được bật trên router thì:
  1. R254 thấy ARP request từ PC2 với subnet 10.1.1.0/24 đến subnet 10.2.2.0/24
  2. R254 thấy rằng đó là lớp mạng mà mình biết (vì connected) và sẽ trả lời gói ARP request dùm cho PC2
  3. R254 gửi ARP reply đến PC2 với MAC address của interface Et0/0
Thực hiện LAB với sơ đồ trên:

PC1
ip 10.1.1.1/24 10.1.1.254

PC2
ip 10.1.1.2/8 10.1.1.254

Server
ip 10.2.2.100/24 10.2.2.254

R254
interface Ethernet0/0
ip address 10.1.1.254 255.255.255.0
no shutdown
exit
interface Ethernet0/1
ip address 10.2.2.254 255.255.255.0
no shutdown
end

Để đảm bảo chắc chắn Proxy ARP đã bậc trên interface Et0/0 chưa, chúng ta dùng lệnh (mặt định được bậc trên router của cisco)

R254#show ip interface ethernet 0/0 | include Proxy
Proxy ARP is enabled
R254#

Kiểm tra hoạt động của Proxy ARP
R254#debug arp
ARP packet debugging is on

Với PC1
Để test từ PC1 ping đến server
PC1> ping 10.2.2.100
84 bytes from 10.2.2.100 icmp_seq=1 ttl=63 time=3.509 ms
84 bytes from 10.2.2.100 icmp_seq=2 ttl=63 time=0.720 ms
84 bytes from 10.2.2.100 icmp_seq=3 ttl=63 time=0.904 ms
84 bytes from 10.2.2.100 icmp_seq=4 ttl=63 time=0.870 ms
84 bytes from 10.2.2.100 icmp_seq=5 ttl=63 time=0.999 ms

R254#
*Apr 21 03:48:35.269: IP ARP: rcvd req src 10.1.1.1 0050.7966.6803, dst 10.1.1.254 Ethernet0/0
*Apr 21 03:48:35.270: IP ARP: creating entry for IP address: 10.1.1.1, hw: 0050.7966.6803
*Apr 21 03:48:35.270: IP ARP: sent rep src 10.1.1.254 aabb.cc00.1000,
                                                                dst 10.1.1.1 0050.7966.6803 Ethernet0/0

R254 nhận ARP request từ PC1 là thiết bị đang hỏi default gateway và R254 trả lời là địa chỉ MAC của interface Et0/0 của mình cho PC1

R254#
*Apr 21 03:48:35.272: IP ARP: creating incomplete entry for IP address: 10.2.2.100 interface Ethernet0/1
*Apr 21 03:48:35.272: IP ARP: sent req src 10.2.2.254 aabb.cc00.1010,
                                                                dst 10.2.2.100 0000.0000.0000 Ethernet0/1
*Apr 21 03:48:35.272: IP ARP: rcvd rep src 10.2.2.100 0050.7966.6805, dst 10.2.2.254 Ethernet0/1

Để biết được MAC của server nên nó khởi tạo request đến server 10.2.2.100 rồi chuyển packet đến server và từ đó R254 cũng nhận được gói tin trả lời từ server thông qua Et0/1. Từ đó nó sẽ trả lời cho PC1 để đến được server 10.2.2.100 thì hỏi IP 10.1.1.254 với MAC là aa:bb:cc:00:10:00 (chính là thông tin của cổng Et0/0 của R254)

PC1> show arp     
aa:bb:cc:00:10:00  10.1.1.254 expires in 113 seconds
PC1> 

Nên, khi kiểm tra bảng ARP trên PC1 thì nó lưu MAC address và IP của default gateway.

Với PC2
R254>
*Apr 21 04:03:46.962: IP ARP: rcvd req src 10.1.1.2 0050.7966.6804, dst 10.2.2.100 Ethernet0/0
*Apr 21 04:03:46.962: IP ARP: creating entry for IP address: 10.1.1.2, hw: 0050.7966.6804
*Apr 21 04:03:46.962: IP ARP: sent rep src 10.2.2.100 aabb.cc00.1000,
                                                                dst 10.1.1.2 0050.7966.6804 Ethernet0/0
*Apr 21 04:03:46.964: IP ARP: rcvd req src 10.2.2.100 0050.7966.6805, dst 10.2.2.254 Ethernet0/1
*Apr 21 04:03:46.964: IP ARP: sent rep src 10.2.2.254 aabb.cc00.1010,
                 dst 10.2.2.100 0050.7966.6805 Ethernet0/1
R254>

R254 nhận được request từ PC2 đến server 10.2.2.100, và nó trả lời cho PC2 rằng để đến được server 10.2.2.100 thì hãy sử dụng MAC aa:bb:cc:00:10:00 là địa chỉ MAC của chính interface Et0/0 của nó.

PC2> show arp     
aa:bb:cc:00:10:00  10.2.2.100 expires in 113 seconds
PC2> 

Thử tắt Proxy ARP trên cổng Et0/0 của R254

R254:
interface Ethernet0/0
no ip proxy-arp

PC1> ping 10.2.2.100
84 bytes from 10.2.2.100 icmp_seq=1 ttl=63 time=1.966 ms
84 bytes from 10.2.2.100 icmp_seq=2 ttl=63 time=0.646 ms
84 bytes from 10.2.2.100 icmp_seq=3 ttl=63 time=1.056 ms
84 bytes from 10.2.2.100 icmp_seq=4 ttl=63 time=1.065 ms
84 bytes from 10.2.2.100 icmp_seq=5 ttl=63 time=0.899 ms
PC1 vẫn ping được bình thường nhờ default gateway và bảng routing trên R254

PC2> ping 10.2.2.100
host (10.2.2.100) not reachable
PC2> 
PC2 không ping đến được server vì: R254 có subnet là 10.1.1.0/24 và nhận được request từ PC2 không nằm trong subnet 10.1.1.0/24 nên nó không forward gói tin broadcast (Router drop bỏ gói tin broadcast) chính vì thế ARP không tạo request đến Server. Trường hợp phải nhờ đến Proxy ARP để giải quyết.

R254#
*Apr 21 06:24:27.233: IP ARP: rcvd req src 10.1.1.2 0050.7966.6804, dst 10.2.2.100 Ethernet0/0
*Apr 21 06:24:28.234: IP ARP: rcvd req src 10.1.1.2 0050.7966.6804, dst 10.2.2.100 Ethernet0/0
*Apr 21 06:24:29.234: IP ARP: rcvd req src 10.1.1.2 0050.7966.6804, dst 10.2.2.100 Ethernet0/0
R254#

Khi Proxy ARP đã được TẮT trên interface Et0/0 của R254 thì R254 sẽ không thay mặt cho Server trả lời gói request này. Đó chính là lý do PC2 không ping được Server.

Noted:
- Server có thể ping đến được PC2 bình thường.
- Có 1 số trường hợp vì lý do gì đó mà không thể bật Proxy ARP trên cổng Et0/0 của R254 được mà bắt buộc PC2 phải ping đến được Server thì chúng ta phải thêm ARP tĩnh/Static ARP vào bảng ARP của PC2 với MAC là địa chỉ MAC của Et0/0 của R254 và IP là IP của Server

Lệnh thêm ARP cho PC2, nếu:
- Cisco route:
arp 10.2.2.100 aabb.cc00.1000 arpa 

PC2#show arp
Protocol  Address          Age (min)   Hardware Addr   Type    Interface
{...}
Internet  10.2.2.100              -          aabb.cc00.1000  ARPA

- Windows
arp -s 10.2.2.100 aa-bb-cc-00-10-00

ICMP-Ping, Tracert & Traceroute

Nội dung:
Tìm hiểu về hoạt động và cách sử dụng gói tin Ping, Tracert, Traceroute

Thực hiện:

1. Ping
Ping sử dụng hai loại gói tin của giao thức lớp 3 là ICMP - Internet Control Message Protocol đó là ICMP Echo Request và ICMP Echo Reply.

Nguyên tắc: Để xem IP trên 1 host có đi đến được hay không:

  • Thiết bị sẽ gửi gói tin ICMP Echo Request đến host cần kiểm tra
  • Host được kiểm tra khi nhận được gói ICMP Echo Requestphản hồi gói ICMP Echo Reply trong một khoảng thời gian qui định nào đó (gọi là timeout)
  • Nếu gói Echo Reply được trả về trong khoảng thời gian timeout => đi đến được
  • Nếu không nhận được gói Echo Reply trong khoảng thời gian timeout => KHÔNG thể đi đến được
Chúng ta cùng nhau xét sơ đồ dưới


Trên PC_1: khởi động chương trình command prompt

thực hiện lệnh ping đến 192.168.0.2

C:\Users\Administrator>ping 192.168.0.2
Pinging 192.168.0.2 with 32 bytes of data:
Reply from 192.168.0.2: bytes=32 time<1ms TTL=255
Reply from 192.168.0.2: bytes=32 time<1ms TTL=255
Reply from 192.168.0.2: bytes=32 time<1ms TTL=255
Reply from 192.168.0.2: bytes=32 time<1ms TTL=255
Ping statistics for 192.168.0.2:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 1ms, Maximum = 2ms, Average = 1ms

Kết quả trên ta thấy PC_1 đã thực hiện gửi đi 4 gói Echo Request đến R1-IP 192.168.0.2 và nhận được 4 gói phản hồi Echo Reply. Vậy PC_1 có thể đi đến được R1


Kết quả phân tích trên phần mềm Wireshark

Trên R1: Sử dụng lệnh ping đến PC_1 ở Privilege Mode

R1#ping 192.168.0.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.0.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/2 ms
R1#

Kết quả ping thấy R1 có thể đến được PC_1-IP 192.168.0.1. R1 gửi đi 5 gói Echo Request và nhận được đủ 5 gói phản hồi Echo Reply (với Cisco - IOS thể 5 dấu chấm than "!")

2. Tracert
Là tiện ích trên hệ điều hành Windows giúp PC đi đến host nào đó nó phải đi qua các router nào. Địa chỉ IP của các Router trên đường đi điều được thể hiện trong kết quả tracert.

Nguyên tắc:
Tracert sẽ khởi tạo TTL = 1 (TTL-Time to live trong IP header của gói tin) cho gói tin ICMP request đầu tiên để gửi đến đích cần trace, tăng giá trị TTL lên 1 đơn vị cho mỗi gói ICMP Request và chờ gói ICMP Time Exeeded trả về. Cứ mỗi khi một gói ICMP Time Exeeded được trả về thì địa chỉ của Router trả lời gói tin này sẽ được ghi lại vào bản ghi của các router trên lộ trình đi đến đích.

Khi trung chuyển ngang qua một router nào đó trường TTL sẽ giảm đi 1 đơn vị. Khi trường TTL = 0 gói IP sẽ bị loại bỏ và một gói ICMP Time Exeeded sẽ được router gửi trả về cho source của gói tin IP mà nó bị loại bỏ.

Gói TTL được tăng lên đủ lớn, gói Echo Request đi đến đích, gói Echo Reply được trả về => tiến trình trace hoàn tất.

Khảo sát sơ đồ:

Trên PC_1 thực hiện tracert đến PC_2-IP 192.168.24.4

C:\Users\Administrator>tracert  192.168.24.4
Tracing route to 192.168.24.4 over a maximum of 30 hops
  1    1 ms    <1 ms    <1 ms  192.168.0.2
  2    1 ms    1 ms    1 ms  192.168.12.22
  3    1 ms    1 ms    1 ms  192.168.24.4
Trace complete.

Kết quả tracert đến host 192.168.24.4 cho thấy lộ trình các thiết bị lớp 3 đã được ghi vào lại với các IP 192.168.0.2 và 192.168.12.22.

Quá trình thực hiện tracert từ PC_1 đến PC_2

Phân tích gói tin trên công Et0/0 của R1 bằng phần mềm wireshark:

PC_1 khởi tạo gói ping với TTL = 1, R1 sẽ trả lời ICMP Time Exeeded cho PC_1

PC_1 khởi tạo gói ping với TTL = 2, R2 sẽ trả lời ICMP Time Exeeded cho PC_1


PC_1 khởi tạo gói ping với TTL = 3, PC_2 thấy rằng đích đến chính là IP của mình nên PC_2 trả lời ICMP Echo Reply cho PC_1. Kết thúc tiến trình.

Phân tích thêm kết quả khi ping đến 192.168.24.4 và giải thích TTL

C:\Users\Administrator>ping 192.168.24.4
Pinging 192.168.24.4 with 32 bytes of data:
Reply from 192.168.24.4: bytes=32 time<1ms TTL=253
Reply from 192.168.24.4: bytes=32 time<1ms TTL=253
Reply from 192.168.24.4: bytes=32 time<1ms TTL=253
Reply from 192.168.24.4: bytes=32 time<1ms TTL=253
Ping statistics for 192.168.24.4:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 1ms, Maximum = 2ms, Average = 1ms

Với PC_2 khi nhận được gói tin ICMP Echo Request mà đích là chính nó, nó sẽ trả lời ICMP Echo Reply với TTL = 255 (mỗi loại thiết của mỗi hãng khác nhau sẽ có giá trị TTL khởi tạo là khác nhau, trong lab này chúng tôi dùng router của cisco nên TTL = 255). Khi gói ICMP Echo (ping) này khi đi qua router sẽ giảm xuống 1 đơn vị và cứ như thế cho đến đích cần nhận để kết thúc tiến trình ping hoặc khi TTL giảm = 0 thì gói tin sẽ bị drop bỏ.

Đó là lý do kết quả ping từ PC_1 đến PC_2 có giá trị TTL = 253.


3. Traceroute
Traeroute được sử dụng trên Cisco IOS có chức năng tương tư như tracert của windows cũng cho phép ghi nhận lại lộ trình đi đến một đích nào đó của thiết bị lớp 3.

Điểm khác nhau:
Tracert: 

  • Dùng ICMP Echo Request và ICMP Echo Reply. 
  • Đích đến cuối cùng sẽ trả lời gói tin ICMP Echo Reply

Traceroute:

  • UDP datagram để gởi đến port được giả định là không tồn tại
  • Đích đến cuối cùng sẽ trả lời gói tin ICMP Destination Port Unreachable


Kết quả phân tích trên wireshark

Thực hiện traceroute từ PC_2 đến PC_1

PC_2#traceroute 192.168.0.1
Type escape sequence to abort.
Tracing the route to 192.168.0.1
VRF info: (vrf in name/id, vrf out name/id)
  1 192.168.24.3 1 msec 0 msec 5 msec
  2 192.168.12.11 1 msec 2 msec 0 msec
  3 192.168.0.1 2 msec 2 msec 2 msec
PC_2#

Cũng tương tự tracert của windows, traceroute cũng ghi lại lộ trình đường đi mà các router nó đã đi qua để đến được đích 192.168.0.1: 192.168.24.3, 192.168.12.11.

Xong!

Cisco, Các Kỹ Thuật Truy Cập Thiết Bị Cisco IOS

Tham khảo cách kết nối dây console trước khi xem bài này.

1. Console
2. Telnet /VTY - Virtual Teletype Terminal
3. SSH - Secure Shell or Secure Socket Shell:

THỰC HIỆN:

1. Console
Console là cách kết nối vào thiết bị trực tiếp thông qua dây console được đấu nối trực tiếp giữa máy tính và thiết bị cần kết nối, và thực hiện các tác vụ cấu hình thiết bị này.


Cấu hình:
enable
conf t
line con 0
password PassConsole
login
end
write
exit

Ý nghĩa các dòng lệnh:
enable: vào privileged mode
conf t: vào global config mode
line console 0: vào line console mode
password PassConsole: đặt password cho line console là PassConsole
login: thực thi việc đặt password cho console (khi kết nối vào thiết bị bằng password vừa đặt ở trên)
end: trở ra privileged mode
write: Lưu những thay đổi, tương đương lệnh copy running-config startup-config
exit: Thoát khỏi console

Khi cấu hình xong chúng ta gặp thông báo "Switch con0 is now available, Press RETURN to get started." sau đó nhấn Enter để đăng nhập vào


Cấu hình thêm:
logging synchronous
exec-timeout 5 50

Giải thích:
logging synchronous: con trỏ sẽ xuống dòng sau mỗi thông báo hiện ra
exec-timeout 5 50: Sẽ logout session hiện tại nếu 5 phút 30 giây không thực hiện bất cứ thao tác gì. Nếu muốn không bao giờ logout session thì chúng ta gõ exec-timeout 0 0

2. Telnet
Telnet: là kỹ thuật cho phép truy nhập vào thiết bị từ xa, từ đó chúng ta có thể thực việc cấu hình mà không cần phải cắm dây console trực tiếp vào thiết bị.

Telnet là giao thức ở lớp ứng dụng chạy trên nền TCP và sử dụng port 23. Với Cisco IOS lưu lượng được tiếp nhận qua đường luận lý có tên VTY - Virtual Teletype Terminal.

Các đường VTY mặc định trên:
  • Router: từ 0 -> 4
  • Switch: từ 0 -> 15




Cấu hình và đặt IP như sơ đồ và đảm bảo PC có thể ping đến được Switch:

Switch:
interface Vlan1
ip address 172.16.0.222 255.255.255.0
no shutdown
end

Đặt IP cho switch là 172.16.0.222

Switch:
conf t
line vty 0 4
password PassTelnet
login
end
write

Giải thích:
line vty 0 4: cho phép maximum 5 kết nói telnet cùng thời điểm
password PassTelnet: đặt password cho cổng VTY -  Telnet là PassTelnet

Trong 1 số trường hợp chúng ta có thể cấu cho phép telnet vào thiết bị mà không cần mật khẩu

Switch:
line vty 0 4
privilege level 15

Giải thích:
privilege level 15: cisco có 16 level từ 0-15, 15 là quyền cao nhất. Chúng ta có thể đặt bất cứ level nào cũng được, nhưng trong lab chúng tôi để là 15 full quyền.


Cài telnet trên máy tính

Command Prompt:
pkgmgr /iu:"TelnetClient"

Bây giờ chúng ta có kết dùng telnet để kết nối vào thiết bị


đặng nhập thành công với password đã cấu hình ở trên là PassTelnet


Noted: Đối với router chúng ta cần phải thiết lập thêm enable password để cho phép truy cập từ User mode tới Privilege mode, global config mode,...

Switch:
conf t
enable password PassEnable
end
write

3. SSH
SSH - Secure Shell or Secure Socket Shell: Cũng giống telnet, SSH giúp chúng ta truy cập vào thiết bị từ xa. Tuy nhiên với Telnet việc trao đổi dữ liệu giữa telnet server với telnet client dưới dạng clear text (dữ liệu không mã hóa dễ bị trộn thông tin). Khác với telnet, dữ liệu trao đổi giữa SSH client và SSH server được mã hóa.

SSH là ứng dụng chạy nên TCP và port 22, có hai version 1 và 2 (khuyến cao dùng SSH Ver. 2)

Switch:
hostname Sw01
ip domain-name khanhvc.abc
crypto key generate rsa general-keys modulus 1024
Switch:
ip ssh version 2

Giải thích:
hostname Sw01: bắt buộc phải đặt hostname, một trong những điều kiện cấu hình SSH
ip domain-name khanhvc.abc: tạo domain name nhằm mục đích cho các key mã hóa
crypto key generate rsa general-keys modulus 1024: thực hiện việc phát sinh key mã hóa

Sw01:
username Admin password 1234

Giải thích:
username Admin password 1234: tạo username là Admin mật khẩu là 1234

HOẶC thêm privilege 15 để bỏ qua bước enable password
username Admin privilege 15 password 1234


Sw01:
line vty 0 4
transport input ssh
login local

Giải thích:
line vty 0 4: vào vty để thiết lập hỗ trợ truy cập bằng SSH
transport input ssh: cho phép thực hiện duy nhất SSH
login local: là phương thức xác thực, khi cấu hình ở VTY thì cho phép sử dụng cơ sở dữ liệu trên thiết bị để đăng nhập thay cho password trên line.

Noted: Với cấu hình trên thiết bị chỉ cho phép duy nhất SSH trên VTY, chúng ta có thể cấu hình transport input all để cho phép: SSH, Telnet,.... 

Thử dùng Putty và chọn SSH để kết nối vào thiết bị với user: Admin và password: 1234 đã cài đặt ở trên.


Kết quả kết nối thành công.

 Xong!

Cisco, Tìm Hiểu Các Mode & Cách Xóa Cấu Hình Trên Thiết Bị Cisco IOS

MỤC TIÊU:
1. Tìm hiểu các mode của Cisco IOS
2. Thực hiện xóa cấu hình trên Cisco IOS

NỘI DUNG:
1. Tìm hiểu các mode của Cisco IOS


  • User EXEC Mode : cho phép các câu lệnh hiển thị thông tin một cách hạn chế, câu lệnh kết nối (ping, traceroute, telnet, ssh, …).
  • Priviledged EXEC Mode: cho phép toàn bộ câu lệnh hiển thị, một số cấu hình cơ bản (clock, copy, erase, …).
  • Global Configuration Mode: cho phép toàn bộ câu lệnh cấu hình lên router.
  • Specific Configuration Mode: cấu hình cụ thể các tác vụ nào đó,...
2. Thực hiện xóa cấu hình trên Cisco IOS

Tham khảo cách kết nối vào thiết bị Cisco trước khi xem phần này.


  • Thực hiện kết nối vào thiết bị và xóa cấu trong startup-config

Router:
enable
erase startup-config

Erasing the nvram filesystem will remove all configuration files! Continue? [confirm]        <= nhấn Enter để thực hiện xóa cấu hình
[OK]
Erase of nvram: complete
*Mar 1 00:03:03.576: %SYS-7-NV_BLOCK_INIT: Initialized the geometry of nvrameload

  • Khởi động lại thiết bị

Router:
reload
System configuration has been modified. Save? [yes/no]: No        <= vì xóa hết cấu hình nên chọn No
Building configuration...
[OK]
Proceed with reload? [confirm]       <= nhấn Enter để khởi đồng ý động lại thiết bị

  • Nếu thiết bị là switch chúng ta phải thực hiên thêm phần xóa cấu hình vlan được lưu trong trong Flash: vlan.dat và khởi động lại thiết bị.

Switch:
enable
delete vlan.dat
Delete filename [vlan.dat]?           <= tên file cần xóa
Delete flash:vlan.dat? [confirm]    <= nhấn Enter để xác nhận xóa file vlan.dat

Xong!

/*header slide*/