-
Tải và cài đặt Virtual Box. (tải và cài thành công, không có lỗi)
-
Tải iso CentOS. (ok)
-
Cài đặt và cấu hình R1:
- Adapter 1: NAT, MAC: 08002748D000 ứng với eth1 trên R1
- Adapter 2: Internal network, name: LAN01, MAC: 0800277BC8C3 ứng với eth2 trên R1
- Thiết lập IP tĩnh cho eth2 của R1:
ifconfig eth2 192.168.1.1/24
- Cấu hình R1 thành NAT của LAN01:
> sysctl -w net.ipv4.ip_forward=1 > iptables -D FORWARD -j REJECT --reject-with icmp-host-prohibited > iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
- Sửa
net.ipv4.ip_forward = 1
trong file/etc/sysctl.conf
để không phải cấu hình lại
-
Cài đặt và cấu hình máy trạm A:
- Clone A từ R1
- Adapter 1: Internal Network, name: LAN01, MAC: 0800272BCE01 ứng với eth4 trên A
- Tắt Adapter 2
- Viết file cấu hình
/ect/sysconfig/network-scripts/ifcfg-eth4
với nội dung:DEVICE=eth4 BOOTPROTO=static ONBOOT=yes IPADDR=192.168.1.20 NETMASK=255.255.255.0
- Thêm default gateway:
> route add default gw 192.168.1.1
-
Kiểm tra kết nối giữa R1 và A:
-
Clone R2, R3 từ R1.
- R2:
- Adapter 1: Internal Network, name: LAN01, MAC: 08002748E000 ứng với eth3 của R2
- Adapter 2: Internal Network, name: LAN02, MAC: 0800277C6305 ứng với eth4 của R2
- Thiết lập R2 thành router:
> sysctl -w net.ipv4.ip_forward=1 > iptables -D FORWARD -j REJECT --reject-with icmp-host-prohibited
- Sửa
net.ipv4.ip_forward = 1
trong file/etc/sysctl.conf
để không phải cấu hình lại
- R3:
- Adapter 1: Internal Network, name: LAN02, MAC: 08002748F000 ứng với eth3 của R2
- Adapter 2: Internal Network, name: LAN03, MAC: 0800277BCAFE ứng với eth4 của R2
- Thiết lập R3 thành router:
> sysctl -w net.ipv4.ip_forward=1 > iptables -D FORWARD -j REJECT --reject-with icmp-host-prohibited > iptables -t nat -A POSTROUTING -o eth3 -j MASQUERADE
- Sửa
net.ipv4.ip_forward = 1
trong file/etc/sysctl.conf
để không phải cấu hình lại
- R2:
-
Clone B, X từ A.
- B: Viết file cấu hình
/ect/sysconfig/network-scripts/ifcfg-eth5
với nội dung:DEVICE=eth5 BOOTPROTO=static ONBOOT=yes IPADDR=192.168.1.21 NETMASK=255.255.255.0 GATEWAY=192.168.1.1
- X: Viết file cấu hình
/ect/sysconfig/network-scripts/ifcfg-eth5
với nội dung:DEVICE=eth5 BOOTPROTO=static ONBOOT=yes IPADDR=192.168.3.20 NETMASK=255.255.255.0 GATEWAY=192.168.3.1
- B: Viết file cấu hình
-
Cấu hình bảng router:
- R1:
> echo '192.168.2.0/24 via 192.168.1.2' > /etc/sysconfig/network-scripts/route-eth2 > echo '192.168.3.0/24 via 192.168.1.2' >> /etc/sysconfig/network-scripts/route-eth2
- R2:
> echo 'default via 192.168.1.1' > /etc/sysconfig/network-scripts/route-eth3 > echo '192.168.3.0/24 via 192.168.2.2' > /etc/sysconfig/network-scripts/route-eth4
- R3:
> echo 'default via 192.168.2.1' > /etc/sysconfig/network-scripts/route-eth3 > echo '192.168.1.0/24 via 192.168.2.1' >> /etc/sysconfig/network-scripts/route-eth3
- R1:
-
Route tables:
-
ping từ X đến B:
-
ping từ A đến X khi R2 với kịch bản "destination unreachable"
-
ping từ A đến X với kịch bản "time out"
- Bật công cụ iptables trên R1, R2 & R3:
> service iptables start > service iptables status > iptables -t mangle -A FORWARD -j LOG > tail -f /var/log/message | grep ICMP
- tracepath từ máy A đến máy X:
- Phân tích các gói của lệnh ICMP
- Path từ A đến X xuất hiện đúng như cấu hình liên mạng.
- Tại R1:
- Các gói tin UDP đầu tiên được gửi qua gửi lại giữa A và 1.1.1.1 để thực hiện bắt tay ba bước.
- R1 bắt đầu gửi gói tin UDP từ A đến X.
- Tại R2:
- Các gói tin UDP của A qua R2 đến X.
- Đồng thời nhận lại các gói tin ICMP từ X về A.
- Tại R3:
- Chỉ có duy nhất một gói UDP được gửi từ A đến X.
- Nhận lại duy nhất một gói ICMP từ X gửi về A.