เช˜เชฐเซ‡เชฒเซเช‚ IPsec VPN เชจเซเช‚ เชจเชฟเชตเชพเชฐเชฃ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เช•เชฐเชตเซเช‚. เชญเชพเช— 1

เช˜เชฐเซ‡เชฒเซเช‚ IPsec VPN เชจเซเช‚ เชจเชฟเชตเชพเชฐเชฃ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เช•เชฐเชตเซเช‚. เชญเชพเช— 1

ะ ั‘ะกะ ยฐ ะก โ€  ะ ั‘ะกะ

เชฆเชฟเชตเชธเชจเซ€ เชฐเชœเชพ. เชนเซเช‚ เช•เซ‹เชซเซ€ เชชเซ€เช‰เช‚ เช›เซเช‚. เชตเชฟเชฆเซเชฏเชพเชฐเซเชฅเซ€เช เชฌเซ‡ เชชเซ‹เชˆเชจเซเชŸ เชตเชšเซเชšเซ‡ VPN เช•เชจเซ‡เช•เซเชถเชจ เชธเซ‡เชŸ เช•เชฐเซเชฏเซเช‚ เช…เชจเซ‡ เช—เชพเชฏเชฌ เชฅเชˆ เช—เชฏเซ‹. เชนเซเช‚ เชคเชชเชพเชธเซเช‚ เช›เซเช‚: เชคเซเชฏเชพเช‚ เช–เชฐเซ‡เช–เชฐ เชเช• เชŸเชจเชฒ เช›เซ‡, เชชเชฐเช‚เชคเซ เชŸเชจเชฒเชฎเชพเช‚ เช•เซ‹เชˆ เชŸเซเชฐเชพเชซเชฟเช• เชจเชฅเซ€. เชตเชฟเชฆเซเชฏเชพเชฐเซเชฅเซ€ เช•เซ‰เชฒเชจเซ‹ เชœเชตเชพเชฌ เช†เชชเชคเซ‹ เชจเชฅเซ€.

เชฎเซ‡เช‚ เช•เซ€เชŸเชฒเซ€ เชšเชพเชฒเซ เช•เชฐเซ€ เช…เชจเซ‡ S-Terra เช—เซ‡เชŸเชตเซ‡ เชฎเซเชถเซเช•เซ‡เชฒเซ€เชจเชฟเชตเชพเชฐเชฃเชฎเชพเช‚ เชกเซ‚เชฌเช•เซ€ เชฒเช—เชพเชตเซ€. เชนเซเช‚ เชฎเชพเชฐเซ‹ เช…เชจเซเชญเชต เช…เชจเซ‡ เชชเชฆเซเชงเชคเชฟ เชถเซ‡เชฐ เช•เชฐเซเช‚ เช›เซเช‚.

เชชเซเชฐเชพเชฐเช‚เชญเชฟเช• เชกเซ‡เชŸเชพ

เชฌเซ‡ เชญเซŒเช—เซ‹เชฒเชฟเช• เชฐเซ€เชคเซ‡ เช…เชฒเช— เชฅเชฏเซ‡เชฒเซ€ เชธเชพเช‡เชŸเซเชธ GRE เชŸเชจเชฒ เชฆเซเชตเชพเชฐเชพ เชœเซ‹เชกเชพเชฏเซ‡เชฒ เช›เซ‡. GRE เชจเซ‡ เชเชจเซเช•เซเชฐเชฟเชชเซเชŸ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡:

เช˜เชฐเซ‡เชฒเซเช‚ IPsec VPN เชจเซเช‚ เชจเชฟเชตเชพเชฐเชฃ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เช•เชฐเชตเซเช‚. เชญเชพเช— 1

เชนเซเช‚ GRE เชŸเชจเชฒเชจเซ€ เช•เชพเชฐเซเชฏเช•เซเชทเชฎเชคเชพ เชคเชชเชพเชธเซ€ เชฐเชนเซเชฏเซ‹ เช›เซเช‚. เช† เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เชนเซเช‚ เช‰เชชเช•เชฐเชฃ R1 เชฅเซ€ เช‰เชชเช•เชฐเชฃ R2 เชจเชพ GRE เช‡เชจเซเชŸเชฐเชซเซ‡เชธ เชชเชฐ เชชเชฟเช‚เช— เชšเชฒเชพเชตเซเช‚ เช›เซเช‚. เช† เชเชจเซเช•เซเชฐเชฟเชชเซเชถเชจ เชฎเชพเชŸเซ‡ เชฒเช•เซเชทเซเชฏ เชŸเซเชฐเชพเชซเชฟเช• เช›เซ‡. เช•เซ‹เช‡ เชœเชตเชพเชฌ เชจเชฅเชฟ:

root@R1:~# ping 1.1.1.2 -c 4
PING 1.1.1.2 (1.1.1.2) 56(84) bytes of data.

--- 1.1.1.2 ping statistics ---
4 packets transmitted, 0 received, 100% packet loss, time 3057ms

เชนเซเช‚ Gate1 เช…เชจเซ‡ Gate2 เชชเชฐเชจเชพ เชฒเซ‰เช—เซเชธ เชœเซ‹เช‰เช‚ เช›เซเช‚. เชฒเซ‹เช— เช–เซเชถเซ€เชฅเซ€ เช…เชนเซ‡เชตเชพเชฒ เช†เชชเซ‡ เช›เซ‡ เช•เซ‡ IPsec เชŸเชจเชฒ เชธเชซเชณเชคเชพเชชเซ‚เชฐเซเชตเช• เชฒเซ‹เชจเซเชš เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เชนเชคเซ€, เช•เซ‹เชˆ เชธเชฎเชธเซเชฏเชพ เชจเชฅเซ€:

root@Gate1:~# cat /var/log/cspvpngate.log
Aug  5 16:14:23 localhost  vpnsvc: 00100119 <4:1> IPSec connection 5 established, traffic selector 172.17.0.1->172.16.0.1, proto 47, peer 10.10.10.251, id "10.10.10.251", Filter 
IPsec:Protect:CMAP:1:LIST, IPsecAction IPsecAction:CMAP:1, IKERule IKERule:CMAP:1

เช—เซ‡เชŸ 1 เชชเชฐเชจเชพ IPsec เชŸเชจเชฒเชจเชพ เช†เช‚เช•เชกเชพเชฎเชพเช‚ เชนเซเช‚ เชœเซ‹เช‰เช‚ เช›เซเช‚ เช•เซ‡ เชคเซเชฏเชพเช‚ เช–เชฐเซ‡เช–เชฐ เชเช• เชŸเชจเชฒ เช›เซ‡, เชชเชฐเช‚เชคเซ Rัvd เช•เชพเช‰เชจเซเชŸเชฐ เชถเซ‚เชจเซเชฏ เชชเชฐ เชฐเซ€เชธเซ‡เชŸ เช›เซ‡:

root@Gate1:~# sa_mgr show
ISAKMP sessions: 0 initiated, 0 responded

ISAKMP connections:
Num Conn-id (Local Addr,Port)-(Remote Addr,Port) State Sent Rcvd
1 3 (10.10.10.251,500)-(10.10.10.252,500) active 1070 1014

IPsec connections:
Num Conn-id (Local Addr,Port)-(Remote Addr,Port) Protocol Action Type Sent Rcvd
1 3 (172.16.0.1,*)-(172.17.0.1,*) 47 ESP tunn 480 0

เชนเซเช‚ S-Terra เชจเซ‡ เช† เชฐเซ€เชคเซ‡ เชฎเซเชถเซเช•เซ‡เชฒเซ€เชฎเชพเช‚ เชฎเซ‚เช•เซเช‚ เช›เซเช‚: เชนเซเช‚ R1 เชฅเซ€ R2 เชจเชพ เชฎเชพเชฐเซเช— เชชเชฐ เชฒเช•เซเชทเซเชฏ เชชเซ‡เช•เซ‡เชŸเซ‹ เช•เซเชฏเชพเช‚ เช–เซ‹เชตเชพเชˆ เชœเชพเชฏ เช›เซ‡ เชคเซ‡ เชถเซ‹เชงเซเช‚ เช›เซเช‚. เชชเซเชฐเช•เซเชฐเชฟเชฏเชพเชฎเชพเช‚ (เชธเซเชชเซ‰เช‡เชฒเชฐ) เชฎเชจเซ‡ เชญเซ‚เชฒ เชฎเชณเชถเซ‡.

เชฎเซเชถเซเช•เซ‡เชฒเซ€เชจเชฟเชตเชพเชฐเชฃ

เชชเช—เชฒเซเช‚ 1. R1 เชฅเซ€ เช—เซ‡เชŸ1 เชถเซเช‚ เชฎเซ‡เชณเชตเซ‡ เช›เซ‡

เชนเซเช‚ เชฌเชฟเชฒเซเชŸ-เช‡เชจ เชชเซ‡เช•เซ‡เชŸ เชธเซเชจเชฟเชซเชฐเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซเช‚ เช›เซเช‚ - tcpdump. เชนเซเช‚ เช†เช‚เชคเชฐเชฟเช• (เชธเชฟเชธเซเช•เซ‹ เชœเซ‡เชตเชพ เชธเช‚เช•เซ‡เชคเชฎเชพเช‚ Gi0/1 เช…เชฅเชตเชพ เชกเซ‡เชฌเชฟเชฏเชจ OS เชจเซ‹เชŸเซ‡เชถเชจเชฎเชพเช‚ eth1) เช‡เชจเซเชŸเชฐเชซเซ‡เชธ เชชเชฐ เชธเซเชจเชฟเชซเชฐ เชฒเซ‰เชจเซเชš เช•เชฐเซเช‚ เช›เซเช‚:

root@Gate1:~# tcpdump -i eth1

tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes
14:53:38.879525 IP 172.16.0.1 > 172.17.0.1: GREv0, key=0x1, length 92: IP 1.1.1.1 > 1.1.1.2: ICMP echo request, id 2083, seq 1, length 64
14:53:39.896869 IP 172.16.0.1 > 172.17.0.1: GREv0, key=0x1, length 92: IP 1.1.1.1 > 1.1.1.2: ICMP echo request, id 2083, seq 2, length 64
14:53:40.921121 IP 172.16.0.1 > 172.17.0.1: GREv0, key=0x1, length 92: IP 1.1.1.1 > 1.1.1.2: ICMP echo request, id 2083, seq 3, length 64
14:53:41.944958 IP 172.16.0.1 > 172.17.0.1: GREv0, key=0x1, length 92: IP 1.1.1.1 > 1.1.1.2: ICMP echo request, id 2083, seq 4, length 64

เชนเซเช‚ เชœเซ‹เช‰เช‚ เช›เซเช‚ เช•เซ‡ Gate1 เชจเซ‡ R1 เชฅเซ€ GRE เชชเซ‡เช•เซ‡เชŸ เชฎเชณเซ‡ เช›เซ‡. เชนเซเช‚ เช†เช—เชณ เชตเชงเซ€ เชฐเชนเซเชฏเซ‹ เช›เซเช‚.

เชชเช—เชฒเซเช‚ 2. GRE เชชเซ‡เช•เซ‡เชŸเซ‹ เชธเชพเชฅเซ‡ Gate1 เชถเซเช‚ เช•เชฐเซ‡ เช›เซ‡

klogview เช‰เชชเชฏเซ‹เช—เชฟเชคเชพเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชนเซเช‚ เชœเซ‹เชˆ เชถเช•เซเช‚ เช›เซเช‚ เช•เซ‡ S-Terra VPN เชกเซเชฐเชพเช‡เชตเชฐเชจเซ€ เช…เช‚เชฆเชฐ GRE เชชเซ‡เช•เซ‡เชŸเซ‹ เชธเชพเชฅเซ‡ เชถเซเช‚ เชฅเชˆ เชฐเชนเซเชฏเซเช‚ เช›เซ‡:

root@Gate1:~# klogview -f 0xffffffff

filtration result for out packet 172.16.0.1->172.17.0.1, proto 47, len 112, if eth0: chain 4 "IPsecPolicy:CMAP", filter 8, event id IPsec:Protect:CMAP:1:LIST, status PASS
encapsulating with SA 31: 172.16.0.1->172.17.0.1, proto 47, len 112, if eth0
passed out packet 10.10.10.251->10.10.10.252, proto 50, len 160, if eth0: encapsulated

เชนเซเช‚ เชœเซ‹เช‰เช‚ เช›เซเช‚ เช•เซ‡ เชฒเช•เซเชทเซเชฏ GRE เชŸเซเชฐเชพเชซเชฟเช• (เชชเซเชฐเซ‹เชŸเซ‹ 47) 172.16.0.1 -> 172.17.0.1 เชธเซ€เชเชฎเชเชชเซ€ เช•เซเชฐเชฟเชชเซเชŸเซ‹ เชจเช•เชถเชพเชฎเชพเช‚ เชฒเชฟเชธเซเชŸ เชเชจเซเช•เซเชฐเชฟเชชเซเชถเชจ เชจเชฟเชฏเชฎ เชนเซ‡เช เชณ เช†เชตเซ‡ เช›เซ‡ เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เชเชจเซเช•เซ‡เชชเซเชธเซเชฏเซเชฒเซ‡เชŸ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เชนเชคเซเช‚. เช†เช—เชณ, เชชเซ‡เช•เซ‡เชŸ เชฐเซ‚เชŸ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เชนเชคเซเช‚ (เชชเชพเชธ เช†เช‰เชŸ). klogview เช†เช‰เชŸเชชเซเชŸเชฎเชพเช‚ เช•เซ‹เชˆ เชชเซเชฐเชคเชฟเชธเชพเชฆ เชŸเซเชฐเชพเชซเชฟเช• เชจเชฅเซ€.

เชนเซเช‚ Gate1 เช‰เชชเช•เชฐเชฃ เชชเชฐ เชเช•เซเชธเซ‡เชธ เชธเซ‚เชšเชฟเช“ เชคเชชเชพเชธเซ€ เชฐเชนเซเชฏเซ‹ เช›เซเช‚. เชฎเชจเซ‡ เชเช• เชเช•เซเชธเซ‡เชธ เชฒเชฟเชธเซเชŸ เชฒเชฟเชธเซเชŸ เชฆเซ‡เช–เชพเชฏ เช›เซ‡, เชœเซ‡ เชเชจเซเช•เซเชฐเชฟเชชเซเชถเชจ เชฎเชพเชŸเซ‡เชจเชพ เชฒเช•เซเชทเซเชฏ เชŸเซเชฐเชพเชซเชฟเช•เชจเซ‡ เชตเซเชฏเชพเช–เซเชฏเชพเชฏเชฟเชค เช•เชฐเซ‡ เช›เซ‡, เชœเซ‡เชจเซ‹ เช…เชฐเซเชฅ เช›เซ‡ เช•เซ‡ เชซเชพเชฏเชฐเชตเซ‹เชฒ เชจเชฟเชฏเชฎเซ‹ เช—เซ‹เช เชตเซ‡เชฒเชพ เชจเชฅเซ€:

Gate1#show access-lists
Extended IP access list LIST
    10 permit gre host 172.16.0.1 host 172.17.0.1

เชจเชฟเชทเซเช•เชฐเซเชท: เชธเชฎเชธเซเชฏเชพ Gate1 เช‰เชชเช•เชฐเชฃ เชธเชพเชฅเซ‡ เชจเชฅเซ€.

klogview เชตเชฟเชถเซ‡ เชตเชงเซ

VPN เชกเซเชฐเชพเช‡เชตเชฐ เชคเชฎเชพเชฎ เชจเซ‡เชŸเชตเชฐเซเช• เชŸเซเชฐเชพเชซเชฟเช•เชจเซ‡ เชนเซ‡เชจเซเชกเชฒ เช•เชฐเซ‡ เช›เซ‡, เชฎเชพเชคเซเชฐ เชคเซ‡ เชŸเซเชฐเชพเชซเชฟเช•เชจเซ‡ เชœ เชจเชนเซ€เช‚ เชœเซ‡เชจเซ‡ เชเชจเซเช•เซเชฐเชฟเชชเซเชŸ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡. เชœเซ‹ VPN เชกเซเชฐเชพเช‡เชตเชฐเซ‡ เชจเซ‡เชŸเชตเชฐเซเช• เชŸเซเชฐเชพเชซเชฟเช• เชชเชฐ เชชเซเชฐเช•เซเชฐเชฟเชฏเชพ เช•เชฐเซ€ เชนเซ‹เชฏ เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เชเชจเช•เซเชฐเชฟเชชเซเชŸ เชตเชฟเชจเชพ เชŸเซเชฐเชพเชจเซเชธเชฎเชฟเชŸ เช•เชฐเซ€ เชนเซ‹เชฏ เชคเซ‹ เช† klogview เชฎเชพเช‚ เชฆเซ‡เช–เชพเชคเชพ เชธเช‚เชฆเซ‡เชถเชพเช“ เช›เซ‡:

root@R1:~# ping 172.17.0.1 -c 4

root@Gate1:~# klogview -f 0xffffffff

filtration result for out packet 172.16.0.1->172.17.0.1, proto 1, len 84, if eth0: chain 4 "IPsecPolicy:CMAP": no match
passed out packet 172.16.0.1->172.17.0.1, proto 1, len 84, if eth0: filtered

เชนเซเช‚ เชœเซ‹เช‰เช‚ เช›เซเช‚ เช•เซ‡ ICMP เชŸเซเชฐเชพเชซเชฟเช• (เชชเซเชฐเซ‹เชŸเซ‹ 1) 172.16.0.1->172.17.0.1 CMAP เช•เซเชฐเชฟเชชเซเชŸเซ‹ เช•เชพเชฐเซเชกเชจเชพ เชเชจเซเช•เซเชฐเชฟเชชเซเชถเชจ เชจเชฟเชฏเชฎเซ‹เชฎเชพเช‚ เชถเชพเชฎเซ‡เชฒ เชจเชฅเซ€ (เช•เซ‹เชˆ เชฎเซ‡เชš เชจเชฅเซ€). เชชเซ‡เช•เซ‡เชŸ เชธเซเชชเชทเซเชŸ เชฒเช–เชพเชฃเชฎเชพเช‚ เชฐเซ‚เชŸ (เชชเชพเชธ เช†เช‰เชŸ) เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เชนเชคเซเช‚.

เชชเช—เชฒเซเช‚ 3. เช—เซ‡เชŸ2 เชฎเชพเช‚เชฅเซ€ เช—เซ‡เชŸ1 เชถเซเช‚ เชฎเซ‡เชณเชตเซ‡ เช›เซ‡

เชนเซเช‚ WAN (eth0) Gate2 เช‡เชจเซเชŸเชฐเชซเซ‡เชธ เชชเชฐ เชธเซเชจเชฟเชซเชฐ เชฒเซ‹เชจเซเชš เช•เชฐเซเช‚ เช›เซเช‚:

root@Gate2:~# tcpdump -i eth0
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes
16:05:45.104195 IP 10.10.10.251 > 10.10.10.252: ESP(spi=0x30088112,seq=0x1), length 140
16:05:46.093918 IP 10.10.10.251 > 10.10.10.252: ESP(spi=0x30088112,seq=0x2), length 140
16:05:47.117078 IP 10.10.10.251 > 10.10.10.252: ESP(spi=0x30088112,seq=0x3), length 140
16:05:48.141785 IP 10.10.10.251 > 10.10.10.252: ESP(spi=0x30088112,seq=0x4), length 140

เชนเซเช‚ เชœเซ‹เช‰เช‚ เช›เซเช‚ เช•เซ‡ Gate2 เช Gate1 เชฎเชพเช‚เชฅเซ€ ESP เชชเซ‡เช•เซ‡เชŸ เชฎเซ‡เชณเชตเซ‡ เช›เซ‡.

เชชเช—เชฒเซเช‚ 4. ESP เชชเซ‡เช•เซ‡เชœเซ‹ เชธเชพเชฅเซ‡ Gate2 เชถเซเช‚ เช•เชฐเซ‡ เช›เซ‡

เชนเซเช‚ เช—เซ‡เชŸ2 เชชเชฐ klogview เช‰เชชเชฏเซ‹เช—เชฟเชคเชพเชจเซ‡ เชฒเซ‰เชจเซเชš เช•เชฐเซเช‚ เช›เซเช‚:

root@Gate2:~# klogview -f 0xffffffff
filtration result for in packet 10.10.10.251->10.10.10.252, proto 50, len 160, if eth0: chain 17 "FilterChain:L3VPN", filter 21, status DROP
dropped in packet 10.10.10.251->10.10.10.252, proto 50, len 160, if eth0: firewall

เชนเซเช‚ เชœเซ‹เช‰เช‚ เช›เซเช‚ เช•เซ‡ เชซเชพเชฏเชฐเชตเซ‹เชฒ เชจเชฟเชฏเชฎ (L50VPN) เชฆเซเชตเชพเชฐเชพ ESP เชชเซ‡เช•เซ‡เชŸเซ‹ (เชชเซเชฐเซ‹เชŸเซ‹ 3) เชกเซเชฐเซ‹เชช (เชกเซเชฐเซ‹เชช) เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเชพ เชนเชคเชพ. เชนเซเช‚ เช–เชพเชคเชฐเซ€ เช•เชฐเซเช‚ เช›เซเช‚ เช•เซ‡ Gi0/0 เชชเชพเชธเซ‡ เช–เชฐเซ‡เช–เชฐ เชคเซ‡เชจเซ€ เชธเชพเชฅเซ‡ เชœเซ‹เชกเชพเชฏเซ‡เชฒ L3VPN เชเช•เซเชธเซ‡เชธ เชธเซ‚เชšเชฟ เช›เซ‡:

Gate2#show ip interface gi0/0
GigabitEthernet0/0 is up, line protocol is up
  Internet address is 10.10.10.252/24
  MTU is 1500 bytes
  Outgoing access list is not set
  Inbound  access list is L3VPN

เชฎเซ‡เช‚ เชธเชฎเชธเซเชฏเชพ เชถเซ‹เชงเซ€ เช•เชพเชขเซ€.

เชชเช—เชฒเซเช‚ 5. เชเช•เซเชธเซ‡เชธ เชธเซ‚เชšเชฟเชฎเชพเช‚ เชถเซเช‚ เช–เซ‹เชŸเซเช‚ เช›เซ‡

L3VPN เชเช•เซเชธเซ‡เชธ เชธเซ‚เชšเชฟ เชถเซเช‚ เช›เซ‡ เชคเซ‡ เชนเซเช‚ เชœเซ‹เช‰เช‚ เช›เซเช‚:

Gate2#show access-list L3VPN
Extended IP access list L3VPN
    10 permit udp host 10.10.10.251 any eq isakmp
    20 permit udp host 10.10.10.251 any eq non500-isakmp
    30 permit icmp host 10.10.10.251 any

เชนเซเช‚ เชœเซ‹เช‰เช‚ เช›เซเช‚ เช•เซ‡ ISAKMP เชชเซ‡เช•เซ‡เชŸเซ‹เชจเซ‡ เชฎเช‚เชœเซ‚เชฐเซ€ เช›เซ‡, เชคเซ‡เชฅเซ€ เชเช• IPsec เชŸเชจเชฒ เชธเซเชฅเชพเชชเชฟเชค เชฅเชฏเซ‡เชฒ เช›เซ‡. เชชเชฐเช‚เชคเซ ESP เชฎเชพเชŸเซ‡ เช•เซ‹เชˆ เชธเช•เซเชทเชฎ เชจเชฟเชฏเชฎ เชจเชฅเซ€. เชฆเซ‡เช–เซ€เชคเซ€ เชฐเซ€เชคเซ‡, เชตเชฟเชฆเซเชฏเชพเชฐเซเชฅเซ€ icmp เช…เชจเซ‡ esp เชฎเชพเช‚ เชฎเซ‚เช‚เชเชตเชฃเชฎเชพเช‚ เชนเชคเซ‹.

เชเช•เซเชธเซ‡เชธ เชธเซ‚เชšเชฟเชจเซ‡ เชธเช‚เชชเชพเชฆเชฟเชค เช•เชฐเซ€ เชฐเชนเซเชฏเซเช‚ เช›เซ‡:

Gate2(config)#
ip access-list extended L3VPN
no 30
30 permit esp host 10.10.10.251 any

เชชเช—เชฒเซเช‚ 6. เช•เชพเชฐเซเชฏเช•เซเชทเชฎเชคเชพ เชคเชชเชพเชธเซ€ เชฐเชนเซเชฏเซเช‚ เช›เซ‡

เชธเซŒ เชชเซเชฐเชฅเชฎ, เชนเซเช‚ เช–เชพเชคเชฐเซ€ เช•เชฐเซเช‚ เช›เซเช‚ เช•เซ‡ L3VPN เชเช•เซเชธเซ‡เชธ เชธเซ‚เชšเชฟ เชธเชพเชšเซ€ เช›เซ‡:

Gate2#show access-list L3VPN
Extended IP access list L3VPN
    10 permit udp host 10.10.10.251 any eq isakmp
    20 permit udp host 10.10.10.251 any eq non500-isakmp
    30 permit esp host 10.10.10.251 any

เชนเชตเซ‡ เชนเซเช‚ เช‰เชชเช•เชฐเชฃ R1 เชฅเซ€ เชฒเช•เซเชทเซเชฏ เชŸเซเชฐเชพเชซเชฟเช• เชถเชฐเซ‚ เช•เชฐเซเช‚ เช›เซเช‚:

root@R1:~# ping 1.1.1.2 -c 4
PING 1.1.1.2 (1.1.1.2) 56(84) bytes of data.
64 bytes from 1.1.1.2: icmp_seq=1 ttl=64 time=35.3 ms
64 bytes from 1.1.1.2: icmp_seq=2 ttl=64 time=3.01 ms
64 bytes from 1.1.1.2: icmp_seq=3 ttl=64 time=2.65 ms
64 bytes from 1.1.1.2: icmp_seq=4 ttl=64 time=2.87 ms

--- 1.1.1.2 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3006ms
rtt min/avg/max/mdev = 2.650/10.970/35.338/14.069 ms

เชตเชฟเชœเชฏ. GRE เชŸเชจเชฒเชจเซ€ เชธเซเชฅเชพเชชเชจเชพ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เช›เซ‡. IPsec เช†เช‚เช•เชกเชพเชฎเชพเช‚ เช‡เชจเช•เชฎเชฟเช‚เช— เชŸเซเชฐเชพเชซเชฟเช• เช•เชพเช‰เชจเซเชŸเชฐ เชถเซ‚เชจเซเชฏ เชจเชฅเซ€:

root@Gate1:~# sa_mgr show
ISAKMP sessions: 0 initiated, 0 responded

ISAKMP connections:
Num Conn-id (Local Addr,Port)-(Remote Addr,Port) State Sent Rcvd
1 3 (10.10.10.251,500)-(10.10.10.252,500) active 1474 1350

IPsec connections:
Num Conn-id (Local Addr,Port)-(Remote Addr,Port) Protocol Action Type Sent Rcvd
1 4 (172.16.0.1,*)-(172.17.0.1,*) 47 ESP tunn 1920 480

Gate2 เช—เซ‡เชŸเชตเซ‡ เชชเชฐ, klogview เช†เช‰เชŸเชชเซเชŸเชฎเชพเช‚, เชธเช‚เชฆเซ‡เชถเชพเช“ เชฆเซ‡เช–เชพเชฏเชพ เช•เซ‡ เชฒเช•เซเชทเซเชฏ เชŸเซเชฐเชพเชซเชฟเช• 172.16.0.1->172.17.0.1 เชธเชซเชณเชคเชพเชชเซ‚เชฐเซเชตเช• CMAP เช•เซเชฐเชฟเชชเซเชŸเซ‹ เชจเช•เชถเชพเชฎเชพเช‚ LIST เชจเชฟเชฏเชฎ เชฆเซเชตเชพเชฐเชพ เชกเชฟเช•เซเชฐเชฟเชชเซเชŸ (PASS) เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซ‹ เชนเชคเซ‹:

root@Gate2:~# klogview -f 0xffffffff
filtration result for in packet 172.16.0.1->172.17.0.1, proto 47, len 112, if eth0: chain 18 "IPsecPolicy:CMAP", filter 25, event id IPsec:Protect:CMAP:1:LIST, status PASS
passed in packet 172.16.0.1->172.17.0.1, proto 47, len 112, if eth0: decapsulated

เชชเชฐเชฟเชฃเชพเชฎเซ‹

เชเช• เชตเชฟเชฆเซเชฏเชพเชฐเซเชฅเซ€เช เชคเซ‡เชจเซ‹ เชฆเชฟเชตเชธ เชฌเชฐเชฌเชพเชฆ เช•เชฐเซเชฏเซ‹.
ME เชจเชฟเชฏเชฎเซ‹ เชธเชพเชฅเซ‡ เชธเชพเชตเชšเซ‡เชค เชฐเชนเซ‹.

เช…เชจเชพเชฎเซ€ เชˆเชœเชจเซ‡เชฐ
t.me/anonymous_engineer


เชธเซ‹เชฐเซเชธ: www.habr.com

เชเช• เชŸเชฟเชชเซเชชเชฃเซ€ เช‰เชฎเซ‡เชฐเซ‹