Site icon GRIP.News

OpenVPN 을 사용해 Site-to-Site VPN 구축하기

앞선 글에서 pfSense 를 사용해 서로다른 VPC/Subnet의 Site-to-Site 연결을 구축했다. GUI 환경은 사용하기 쉽지만, 직접 설정 할 수 있는 옵션들이 메뉴화 되어 있어 처음 사용하는 사람에겐 어렵게 느껴질 수 있다. 이 포스트는 pfSense 와 같은 관리 툴의 도움 없이 OpenVPN 을 직접 설치 해 Site-to-Site 를 구축하는 것을 목표로 하고자 한다.

pfSense, OpenVPN Site-to-Site 구축하기

과거, 설계의 기준은 Management Subnet 에 OpenVPN Server 와 각 Region을 연결하는 OpenVPN Client 를 따로 뒀다면, 이번엔 하나의 EC2 Instance 에서 Server/Client 의 역할을 동시에 수행 하도록 구축 할 것이다. 참고로 Site-to-Site 를 위해 OpenVPN 의 HowTo 문서를 한번 읽어보는 것을 권장한다.

 

이번에 만들고자 하는 Traffic 의 흐름

 

 

여기서 OP SUBNET 은 Site-to-Site 의 종단점에 위치한 가장 Network 이다. 일반적으로 Management 영역을 먼저 만들고, 연계 영역을 만드는것이 일반적이지만, Management 의 VPN Host 가 Single 이기 때문에 복잡도가 높아 OP SUBNET 부터 진행하고자 한다.

 

OP SUBNET, OpenVPN 설치


 

OpenVPN Package 설치

uBuntu 의 패키지 관리자를 사용해 OpenVPN 및, 인증서를 생성하기 위한 easy-rsa를 설치하자. 참고로, 패키지 관리자로 설치되는 OpenVPN은 현행버전 대비 구 버전임을 참고하자. easy-rsa는 PKI(Public Key Infrastructure) 관리 도구로 Public-Private를 생성하는데 사용할 수 있다.

$ sudo apt-get update && apt-get upgrade -y # EC2 Instance 를 처음 생성했다면 늘 패키지를 최신에 맞게 업데이트 하자
$ sudo sync && sudo reboot
$ sudo apt-get install openvpn easy-rsa

 

OpenVPN Server 설정

1.Certificate Authority (CA) certificate 및 key 생성

기본적으로 Client 와 Server 인증서 서명에 사용할 Key-Pair와 CA 를 설정해야 한다.

$ cp -r /usr/share/doc/openvpn /etc/openvpn
$ cp -r /usr/share/easy-rsa /etc/openvpn/
$ cd /etc/openvpn/easy-rsa

 

vars 파일을 편집해 PKI 생성시 사용할 변수를 변경한다. 이 값을 미리 입력하면 키를 생성할 때 매번 입력해야 하는 불편함을 줄여준다. 그리고 PKI를 초기화 하자.

$ vi vars
.
.
export KEY_COUNTRY="KR"
export KEY_PROVINCE="KR"
export KEY_CITY="Gangseo-gu"
export KEY_ORG="Grip.news"
export KEY_EMAIL="gloriashield@msn.com"
export KEY_OU="NewsLabs"
.
.
$ ln -s openssl-1.0.0.cnf ./openssl.cnf
$ source ./vars
$ ./clean-all
$ ./build-ca
Generating a 2048 bit RSA private key
................................................+++
......+++
writing new private key to 'ca.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [KR]:
State or Province Name (full name) [KR]:
Locality Name (eg, city) [Gangseo-gu]:
Organization Name (eg, company) [Grip.news]:
Organizational Unit Name (eg, section) [NewsLabs]:
Common Name (eg, your name or your server's hostname) [Grip.news CA]:
Name [EasyRSA]:
Email Address [gloriashield@msn.com]:

 

별다른 오류가 없었다면 keys 폴더가 생겼을 것이고 해당 폴더에 ca.crt/key 파일이 보인다.

$ cd keys
$ ls -al
-rw-r--r-- 1 root root 1744 May 15 05:34 ca.crt
-rw------- 1 root root 1708 May 15 05:34 ca.key
-rw-r--r-- 1 root root    0 May 15 05:34 index.txt
-rw-r--r-- 1 root root    3 May 15 05:34 serial

 

2. OpenVPN Server 인증서 및 키 생성

Server 인증서와 Private Key 를 생성하자. 앞서 설정한 vars 참고 하기 때문에 설정을 그대로 승계할 것이다. 이번 절차에선 상호 인터페이스가  많지 않으므로 필요한 tls key 와 diffie-helman Pem 도 함께 생성 하자.

※ Diffie-Helman은 dh2048.pem 파일을 만들게 된다. (시스템에 따라 긴 시간이 소요될 수 있으며, Key Length 에 따라 1024.pem 이 생성될 수 있다.)

$ cd .. # keys 폴더이라면
$ ./build-key-server NRT-OP-OpenVPN # "CommonName"
$ openvpn --genkey --secret ta.key # TLS
$ ./build-dh # Diffie-Helman

 

3. OpenVPN Server 설정파일 수정

OpenVPN 패키지를 설치해도 서버 설정 파일은 생성되지 않는다. 하지만 앞선 작업에서 예제 폴더가 함께 복사 되었을 것이며, 그 파일을 응용하자. 중요한건 Key 부분이며, 나머지는 적절하게 수정하면 된다.

$ cd /etc/openvpn/examples/sample-config-files/
$ gzip -d server.conf.gz 
$ cp server.conf /etc/openvpn/
$
$ vi /etc/openvpn/server.conf
.
.
.
# Any X509 key management system can be used.
# OpenVPN can also use a PKCS #12 formatted key file
# (see "pkcs12" directive in man page).
ca /etc/openvpn/easy-rsa/keys/ca.crt
cert /etc/openvpn/easy-rsa/keys/NRT-OP-OpenVPN.crt
key /etc/openvpn/easy-rsa/keys/NRT-OP-OpenVPN.key


# Diffie hellman parameters.
# Generate your own with:
#   openssl dhparam -out dh2048.pem 2048
dh /etc/openvpn/easy-rsa/keys/dh2048.pem

# Should be subnet (addressing via IP)
# unless Windows clients v2.0.9 and lower have to
# be supported (then net30, i.e. a /30 per client)
# Defaults to net30 (not recommended)
topology subnet

# Configure server mode and supply a VPN subnet
# for OpenVPN to draw client addresses from.
# The server will take 10.8.0.1 for itself,
# the rest will be made available to clients.
# Each client will be able to reach the server
# on 10.8.0.1. Comment this line out if you are
# ethernet bridging. See the man page for more info.
# OpenVPN Client 에 부여할 IP Range
server 192.168.101.0 255.255.255.0
.
.
.
# EXAMPLE: Suppose the client
# having the certificate common name "Thelonious"
# also has a small subnet behind his connecting
# machine, such as 192.168.40.128/255.255.255.248.
# First, uncomment out these lines:
# 사용자 설정 폴더를 활성화 한다.
client-config-dir ccd
# 10.40.0.0/16 으로부터의 연결은 MGMT-VPN-USER 다. 
route 10.40.0.0 255.255.0.0 192.168.101.50
.
.
# Uncomment this directive to allow different
# clients to be able to "see" each other.
# By default, clients will only see the server.
# To force clients to only see the server, you
# will also need to appropriately firewall the
# server's TUN/TAP interface.
# 클라이언트 간 상호 통신을 허용한다.
client-to-client
.
.
# The server and each client must have
# a copy of this key.
# The second parameter should be '0'
# on the server and '1' on the clients.
# tls 인증 추가
tls-auth /etc/openvpn/easy-rsa/keys/ta.key 0 

# Select a cryptographic cipher.
# This config item must be copied to
# the client config file as well.
# Note that v2.4 client/server will automatically
# negotiate AES-256-GCM in TLS mode.
# See also the ncp-cipher option in the manpage
# 암호화 방식은 AES-256-CBC 이며 나중에 client 설정할 때도 동일해야 한다.
cipher AES-256-CBC
.
.
.

 

4. OpenVPN Server 시스템 설정 변경

uBuntu 는 기본적으로 IP 를 포워딩 할 수 없도록 제한되어 있다. 즉 OpenVPN Server 로 들어오는 Traffic 이 같은 Subnet 내 다른 Service 로 포워드 되지 않는걸 수정한다. 또한 POST Routing 을 활성화하자.

$ sudo vi /etc/sysctl.conf
.
.
net.ipv4.ip_forward = 1 # 주석제거
.
.
$ sudo sysctl -p
net.ipv4.ip_forward = 1
$
$ iptables --table nat --append POSTROUTING --out-interface ens5 -j MASQUERADE # ens5 는 인터페이스 명칭

이와 별개로 AWS 내 EC2 Instance 의 네트워크 설정을 수정하자.  그대로 놔둘 경우 패킷이 방황하게 된다.

 

5. OpenVPN Server 실행

init.d 이용해 시작하는 방법과, 직접 config 파일을 지정해 실행하는 방법이 있다. 우선 화면 로그를 보며 편집하는것이 여러모로 편리하기 때문에 직접 실행해보자.

$ openvpn --config /etc/openvpn/server.conf

실행 전 Routing Table

root@ip-10-30-101-200:/home/ubuntu# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.30.101.1     0.0.0.0         UG    100    0        0 ens5
10.30.101.0     0.0.0.0         255.255.255.0   U     0      0        0 ens5
10.30.101.1     0.0.0.0         255.255.255.255 UH    100    0        0 ens5

실행 후 Routing Table, 2개의 tun0 이 생성됐다.

root@ip-10-30-101-200:/home/ubuntu# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.30.101.1     0.0.0.0         UG    100    0        0 ens5
10.30.101.0     0.0.0.0         255.255.255.0   U     0      0        0 ens5
10.30.101.1     0.0.0.0         255.255.255.255 UH    100    0        0 ens5
10.40.0.0       192.168.101.50  255.255.0.0     UG    0      0        0 tun0
192.168.101.0   0.0.0.0         255.255.255.0   U     0      0        0 tun0

 

OP SUBNET, OpenVPN Server 에 접속을 위한 Client 설정


MGMT OpenVPN Instance 내 Client 를 위한 환경 설정 파일을 생성하고, 필요한 Key/인증서를 만들고 복사하자. 클라이언트를 위한 인증서 역시 easy-rsa 폴더에서 진행된다.

$ cd /etc/openvpn/easy-rsa
$ ./build-key MGMT-VPN-USER

기본적으로 생성된 Key 는 keys 폴더에 저장된다.

-rw-r--r-- 1 root root 5514 May 15 06:48 MGMT-VPN-USER.crt
-rw-r--r-- 1 root root 1086 May 15 06:47 MGMT-VPN-USER.csr
-rw------- 1 root root 1704 May 15 06:47 MGMT-VPN-USER.key
root@ip-10-30-101-200:/etc/openvpn/easy-rsa/keys#

사용자를 위한 환경설정(ccd : client-config-directory) 폴더를 생성하고, VPN Subnet 정보를 기록함으로서 Routing 할 수 있도록하자.

# MGMT-VPN-USER 는 앞서 생성한 사용자 계정
$ make -p /etc/openvpn/ccd/
$ vi /etc/openvpn/ccd/MGMT-VPN-USER
ifconfig-push 192.168.101.50 255.255.255.0; # Gateway 역할을 하기 때문에 고정 IP 로 할당한다.
iroute 10.40.0.0 255.255.0.0;
push "route 10.30.101.0 255.255.255.0 192.168.101.1";

MGMT OpenVPN Instance 로 옮길 압축 파일을 만들자

$ cd /etc/openvpn/easy-rsa/keys
$ mkdir /etc/openvpn/MGMT-VPN-USER
$ cp MGMT-VPN-USER.crt MGMT-VPN-USER.key ca.crt ta.key /etc/openvpn/MGMT-VPN-USER/
$ cd /etc/openvpn/MGMT-VPN-USER
$ vi MGMT-VPN-USER.ovpn
client
dev tun
remote 52.197.24.168 # OP OpenVPN Server 의 Public IP 

# 필수 인증서
ca ca.crt
cert MGMT-VPN-USER.crt
key MGMT-VPN-USER.key

cipher AES-256-CBC #알고리즘은 서버와 동일해야한다.
tls-auth ta.key 1
proto udp
port 1194

persist-tun
persist-key

$ tar cvvzf ../MGMT-VPN-USER.tar.gz ./*

자, 생성된 MGMT-VPN-USER.tar.gz 파일을 MGMT-OPENVPN EC2 Instance 로 옮기자.

 

MGMT SUBNET, OpenVPN Client 설치


MGMT Subnet OpenVPN 은 Server 와 Client 역할을 동시에 수행한다. Server 는 사용자(개발자)와 연결하며, Client 는 OP Subnet 의 OpenVPN Server와 연결한다. 이 OpenVPN 은 사용자를 MGMT 내 Service 와 연결을 도와주거나, OP Subnet 으로 전달해 주는 릴레이 역할을 한다.

기본적으로 OpenVPN 설치 방법은 동일하다. 앞서 OP Subnet OpenVPN Server 설치와 동일하게 진행하되, ‘Package’ 까지만 설치하자. 우선 MGMT OpenVPN Server 를 OP Subnet OpenVPN Server와 연결하자.

 

$ mkdir -p /opt/MGMT-VPN-USER
$ tar -C /opt/MGMT-VPN-USER -xvf MGMT-VPN-USER.tar.gz
$ cd /opt/MGMT-VPN-USER
$ openvpn MGMT-VPN-USER.ovpn

Client 연결은 매우 간단하다. 실행 전 Routing Table

root@ip-10-40-101-200:/opt/MGMT-VPN-USER$ route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.40.101.1     0.0.0.0         UG    100    0        0 ens5
10.40.101.0     0.0.0.0         255.255.255.0   U     0      0        0 ens5
10.40.101.1     0.0.0.0         255.255.255.255 UH    100    0        0 ens5

실행 후 Routing Table

root@ip-10-40-101-200:/opt/MGMT-VPN-USER$ route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.40.101.1     0.0.0.0         UG    100    0        0 ens5
10.30.101.0     192.168.101.1   255.255.255.0   UG    0      0        0 tun0
10.40.101.0     0.0.0.0         255.255.255.0   U     0      0        0 ens5
10.40.101.1     0.0.0.0         255.255.255.255 UH    100    0        0 ens5
192.168.101.0   0.0.0.0         255.255.255.0   U     0      0        0 tun0

root@ip-10-40-101-200:/opt/MGMT-VPN-USER$ ip route
default via 10.40.101.1 dev ens5 proto dhcp src 10.40.101.200 metric 100
default via 10.40.101.1 dev ens5 proto dhcp src 10.40.101.200 metric 100
10.30.101.0/24 via 192.168.101.1 dev tun0
10.40.101.0/24 dev ens5 proto kernel scope link src 10.40.101.200
10.40.101.1 dev ens5 proto dhcp scope link src 10.40.101.200 metric 100
192.168.101.0/24 dev tun0 proto kernel scope link src 192.168.101.4

모든 연결이 완료 됐다. OP Subnet 특정 Instance 에 ICMP 패킷을 날려 제대로 Response 되는지 확인하자

## MGMT OpenVPN Client
root@ip-10-40-101-200:/opt/MGMT-VPN-USER# ping 10.30.101.71
PING 10.30.101.71 (10.30.101.71) 56(84) bytes of data.
64 bytes from 10.30.101.71: icmp_seq=1 ttl=63 time=0.600 ms
64 bytes from 10.30.101.71: icmp_seq=2 ttl=63 time=0.569 ms
64 bytes from 10.30.101.71: icmp_seq=3 ttl=63 time=0.667 ms

## OP OpenVPN Server
root@ip-10-30-101-200:/etc/openvpn# tcpdump -e icmp
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on tun0, link-type RAW (Raw IP), capture size 262144 bytes
07:48:52.608887 ip: ip-192-168-101-4.ap-northeast-1.compute.internal > ip-10-30-101-71.ap-northeast-1.compute.internal: ICMP echo request, id 3899, seq 1, length 64
07:48:52.609060 ip: ip-10-30-101-71.ap-northeast-1.compute.internal > ip-192-168-101-4.ap-northeast-1.compute.internal: ICMP echo reply, id 3899, seq 1, length 64
07:48:53.622751 ip: ip-192-168-101-4.ap-northeast-1.compute.internal > ip-10-30-101-71.ap-northeast-1.compute.internal: ICMP echo request, id 3899, seq 2, length 64
07:48:53.622895 ip: ip-10-30-101-71.ap-northeast-1.compute.internal > ip-192-168-101-4.ap-northeast-1.compute.internal: ICMP echo reply, id 3899, seq 2, length 64
07:48:54.646845 ip: ip-192-168-101-4.ap-northeast-1.compute.internal > ip-10-30-101-71.ap-northeast-1.compute.internal: ICMP echo request, id 3899, seq 3, length 64
07:48:54.647026 ip: ip-10-30-101-71.ap-northeast-1.compute.internal > ip-192-168-101-4.ap-northeast-1.compute.internal: ICMP echo reply, id 3899, seq 3, length 64

정상적으로 Request 가 전달 되었고, Response 도 잘 이뤄졌다.  (클라이언트는 너무 간단하다. OpenVPN 구성이 99% 의 Server 구축 및 설정과 1% 의 Client 접속으로 이뤄졌다는 이야기를 하는데 그 이유가 여기에 있다)

 

MGMT SUBNET, OpenVPN Server 설치


 

사용자(개발자)와 연결될 OpenVPN Server 를 설치 및 설정하고 MGMT OpenVPN Client 와 OP Subnet OpenVPN Server 를 연결하자. OpenVPN Server 의 설치 및 설정은 동일하다.

1. vars 를 이용해 Server CA 를 만든다.

여담이지만, MGMT Subnet OpenVPN Server 에서 CA 를 생성하고, 각 Site OpenVPN Server 에 옮겨 사용하면 하나의 CA 로 복수의 Subnet 관리가 가능하다. 이건 tls 도 동일.

2. build-key-server 로 Server 인증서를 생성하고 ta.key 와 Diffie-Helman 암호화 pem 을 만들자.

3. server.conf 를 수정하자. 

# OP Subnet OpenVPN Server 와 다른 글자가 포함되어 있는 내용만 (일부는 기억 차원에서)
$ vi server.conf
.
.
ca /etc/openvpn/easy-rsa/keys/ca.crt
cert /etc/openvpn/easy-rsa/keys/MGMT-OpenVPN.crt
key /etc/openvpn/easy-rsa/keys/MGMT-OpenVPN.key 
.
dh /etc/openvpn/easy-rsa/keys/dh2048.pem
.
server 192.168.100.0 255.255.255.0
.
client-config-dir ccd
route 192.168.100.0 255.255.255.254
.
client-to-client
.
tls-auth /etc/openvpn/easy-rsa/keys/ta.key 0


4. 시스템 설정 변경

5. OpenVPN Server실행

 

MGMT SUBNET, OpenVPN Server 접속을 위한 Client 설정


사용자를 위한 환경 설정 파일을 생성하고, 필요한 Key/인증서를 만들고 복사하자. 역시 앞에서 이미 작업한 Client 내용과 유사(?) 하다.

클라이언트를 위한 인증서 역시 easy-rsa 폴더에서 진행된다.

$ cd /etc/openvpn/easy-rsa
$ ./build-key gloriashield

기본적으로 생성된 Key 는 keys 폴더에 저장된다. 그리고 ccd 를 설정하자.

-rw-r--r-- 1 root root 5514 May 15 06:48 gloriashield.crt
-rw-r--r-- 1 root root 1086 May 15 06:47 gloriashield.csr
-rw------- 1 root root 1704 May 15 06:47 gloriashield.key
root@ip-10-40-101-200:/etc/openvpn/easy-rsa/keys#
$ make -p /etc/openvpn/ccd/
$ vi /etc/openvpn/ccd/gloriashield
iroute 192.168.100.0 255.255.255.0; # VPN 터널 영역
push "route 10.30.101.0 255.255.255.0 192.168.100.1";
push "route 10.40.101.0 255.255.255.0 192.168.100.1";

사용자에게 전달할 압축 파일을 만들자

$ cd /etc/openvpn/easy-rsa/keys
$ mkdir /etc/openvpn/gloriashield
$ cp gloriashield.crt gloriashield.key ca.crt ta.key /etc/openvpn/gloriashield/
$ cd /etc/openvpn/gloriashield
$ vi gloriashield.ovpn
client
dev tun
remote 13.231.104.43 # MGMT OpenVPN Server 의 Public IP 

# 필수 인증서
ca ca.crt
cert gloriashield.crt
key gloriashield.key

cipher AES-256-CBC #알고리즘은 서버와 동일해야한다.
tls-auth ta.key 1
proto udp
port 1194

persist-tun
persist-key

$ tar cvvzf ../gloriashield.tar.gz ./*

gloriashield.tar.gz 를 Local 로 옮겨 실행하자.

 

Developer PC 에서 MGMT OpenVPN Server 로 접속

C:\Users\glori>route print -4
IPv4 경로 테이블
===========================================================================
활성 경로:
네트워크 대상      네트워크 마스크     게이트웨이      인터페이스    메트릭
          0.0.0.0          0.0.0.0    192.168.250.1   192.168.250.25     35
        127.0.0.0        255.0.0.0             연결됨         127.0.0.1    331
        127.0.0.1  255.255.255.255             연결됨         127.0.0.1    331
  127.255.255.255  255.255.255.255             연결됨         127.0.0.1    331
    192.168.250.0    255.255.255.0             연결됨    192.168.250.25    291
   192.168.250.25  255.255.255.255             연결됨    192.168.250.25    291
  192.168.250.255  255.255.255.255             연결됨    192.168.250.25    291
        224.0.0.0        240.0.0.0             연결됨         127.0.0.1    331
        224.0.0.0        240.0.0.0             연결됨    192.168.250.25    291
  255.255.255.255  255.255.255.255             연결됨         127.0.0.1    331
  255.255.255.255  255.255.255.255             연결됨    192.168.250.25    291
===========================================================================

VPN Client 실행 후

C:\Users\glori>route print -4
IPv4 경로 테이블
===========================================================================
활성 경로:
네트워크 대상      네트워크 마스크     게이트웨이      인터페이스    메트릭
          0.0.0.0          0.0.0.0    192.168.250.1   192.168.250.25     35
      10.30.101.0    255.255.255.0    192.168.100.1    192.168.100.2    291
      10.40.101.0    255.255.255.0    192.168.100.1    192.168.100.2    291
        127.0.0.0        255.0.0.0             연결됨         127.0.0.1    331
        127.0.0.1  255.255.255.255             연결됨         127.0.0.1    331
  127.255.255.255  255.255.255.255             연결됨         127.0.0.1    331
    192.168.100.0    255.255.255.0             연결됨     192.168.100.2    291
    192.168.100.2  255.255.255.255             연결됨     192.168.100.2    291
  192.168.100.255  255.255.255.255             연결됨     192.168.100.2    291
    192.168.250.0    255.255.255.0             연결됨    192.168.250.25    291
   192.168.250.25  255.255.255.255             연결됨    192.168.250.25    291
  192.168.250.255  255.255.255.255             연결됨    192.168.250.25    291
        224.0.0.0        240.0.0.0             연결됨         127.0.0.1    331
        224.0.0.0        240.0.0.0             연결됨     192.168.100.2    291
        224.0.0.0        240.0.0.0             연결됨    192.168.250.25    291
  255.255.255.255  255.255.255.255             연결됨         127.0.0.1    331
  255.255.255.255  255.255.255.255             연결됨     192.168.100.2    291
  255.255.255.255  255.255.255.255             연결됨    192.168.250.25    291
===========================================================================

10.30.101.0/24 와 10.40.101.0/24 추가 됐다.

 

VPN Client 실행 후

C:\Users\glori>tracert 10.40.101.200

최대 30홉 이상의 10.40.101.200(으)로 가는 경로 추적

  1    36 ms    36 ms    36 ms  10.40.101.200

추적을 완료했습니다.

C:\Users\glori>tracert 10.30.101.71
최대 30홉 이상의 10.30.101.71(으)로 가는 경로 추적

  1    35 ms    36 ms    35 ms  192.168.100.1
  2    76 ms    76 ms    78 ms  192.168.101.1
  3    82 ms    84 ms    81 ms  10.30.101.71

추적을 완료했습니다.



Exit mobile version