다른 서버나 컴퓨터의 특정 포트로 통신 가능한지 확인하는 방법

서버를 운영하거나 네트워크 문제를 점검하다 보면 “상대 서버의 특정 포트로 접속이 되는지” 확인해야 할 때가 많습니다. 예를 들어 웹 서버의 80번, 443번 포트가 열려 있는지 확인하거나, DB 서버의 3306, 5432 포트로 접속 가능한지 확인해야 하는 경우가 있습니다. 또한 방화벽 정책을 변경한 뒤 실제로 통신이 가능한지 검증할 때도 포트 확인은 매우 중요합니다.

특정 포트로 통신이 가능한지 확인한다는 것은 단순히 상대 서버가 켜져 있는지 보는 것과 다릅니다. ping이 된다고 해서 특정 포트가 열려 있다는 뜻은 아니고, 반대로 ping이 안 된다고 해서 반드시 서비스 접속이 불가능하다는 뜻도 아닙니다. 실제 서비스 통신 가능 여부는 해당 서버의 IP 주소와 포트 번호를 기준으로 확인해야 합니다.

윈도우

telnet 명령어 이용하는 방법

  • 텔넷 클라이언트 기능을 추가합니다.
  • 명령 프롬프트(CMD) 또는 PowerShell에서 다음과 같이 명령합니다. google.com의 443 포트가 열렸는지 확인하는 것입니다.
C:\Users\JB>telnet google.com 443
  • 포트가 열려 있다면 아무 내용 없는 창이 나옵니다.
  • 만약 닫혀 있다면 아래와 같이 연결하지 못한다는 메시지가 나옵니다.
C:\Users\JB>telnet google.com 444
연결 대상 google.com...호스트에 연결할 수 없습니다. 포트 444: 연결하지 못했습니다.

tnc 명령어 이용하는 방법

  • PowerShell에서 다음과 같이 명령합니다. google.com의 443 포트가 열렸는지 확인하는 것입니다.
  • 열려 있다면 True...
PS C:\Users\JB> tnc google.com -port 443

ComputerName     : google.com
RemoteAddress    : 142.250.76.142
RemotePort       : 443
InterfaceAlias   : Ethernet
SourceAddress    : 192.168.0.201
TcpTestSucceeded : True
  • 그렇지 않다면 False를 반환합니다.
PS C:\Users\JB> tnc google.com -port 444
경고: TCP connect to (142.250.76.142 : 444) failed

ComputerName           : google.com
RemoteAddress          : 142.250.76.142
RemotePort             : 444
InterfaceAlias         : Ethernet
SourceAddress          : 192.168.0.201
PingSucceeded          : True
PingReplyDetails (RTT) : 34 ms
TcpTestSucceeded       : False

Test-NetConnection 명령어 이용하는 방법

  • PowerShell에서 다음과 같이 명령합니다. google.com의 443 포트가 열렸는지 확인하는 것입니다.
PS C:\Users\jb> Test-NetConnection -ComputerName google.com -Port 443                                                                                                                                                                                                                                                                                                   ComputerName     : google.com
RemoteAddress    : 142.250.207.110
RemotePort       : 443
InterfaceAlias   : Ethernet
SourceAddress    : 192.168.0.200
TcpTestSucceeded : True

리눅스

  • nc 명령어로 확인할 수 있습니다.
# nc -zv google.com 443
Ncat: Version 7.70 ( https://nmap.org/ncat )
Ncat: Connected to 142.250.206.206:443.
Ncat: 0 bytes sent, 0 bytes received in 0.05 seconds.

 

같은 카테고리의 다른 글
리눅스 / 명령어 / alias / 명령어 별칭 만들기

리눅스 / 명령어 / alias / 명령어 별칭 만들기

긴 명령어 또는 복잡한 명령어를 자주 사용한다면 alias를 사용하자. 시간을 많이 절약할 수 있다. alias 목록 보기 alias를 실행하면 현재 등록된 alias를 출력한다. alias 예를 들어 ll을 실행한다는 것은 ls -alF를 실행하는 것과 같다. alias egrep='egrep --color=auto' alias fgrep='fgrep --color=auto' alias grep='grep --color=auto' alias l='ls -CF' alias la='ls -A' alias ll='ls -alF' alias ls='ls --color=auto' alias 만들기 alias는 다음과 같이 만든다. abc를 실행하는 ...

글꼴 파일 TTF·TTC·OTF·OTC 차이와 선택 방법

글꼴 파일 TTF·TTC·OTF·OTC 차이와 선택 방법

TTF·OTF는 단일 글꼴, TTC·OTC는 여러 글꼴을 담는 컬렉션 파일입니다. 각 확장자의 차이와 글꼴 파일을 선택·설치할 때 확인할 점을 설명합니다.

한화손해보험 / 실비보험 / 보험금 앱으로 청구하여 받는 방법

한화손해보험 / 실비보험 / 보험금 앱으로 청구하여 받는 방법

한화손해보험에 실비보험을 들어둔 게 있습니다. 병원에 잘 가지 않아서 실비보험의 드는 게 의미가 있나 고민을 했었는데, 나이가 들고 병원을 다니게 되니 잘 가입했다는 생각이 듭니다. 물론 계속 건강해서 보험금을 아까워하는 게 더 좋은 거지만요. 실비보험은 실제로 지출한 병원비를 보장 받는 건데, 보험금을 받으려면 보험회사에 청구를 해야 합니다. 병원에서 보험사로 자동으로 청구를 ...

안드로이드 / 앱 / 카카오톡 / 카카오메일 / 알림 설정하는 방법

안드로이드 / 앱 / 카카오톡 / 카카오메일 / 알림 설정하는 방법

카카오톡에서 메일 계정을 만들 수 있다는 것을 보고 만들러 들어갔더니, 이미 만들어 놓았네요. 카카오 메일 만드는 방법을 포스팅도 했었는데, 메일 수신 알림이 한 번도 안와서 까먹고 있었습니다. 그렇다고 메일이 오지 않은 것은 아닙니다. 카카오에서 이런 저런 메일을 보냈네요. 대부분 몰라도 되는 내용이지만, 어떤 건 중요한 것인데... 이유를 찾아보니 알림 설정때문이었습니다. 카카오메일 설정으로 들어갑니다. 을 ...

아이피타임(ipTIME) 공유기 / 네트워크 프린터 만드는 방법

아이피타임(ipTIME) 공유기 / 네트워크 프린터 만드는 방법

네트워크 기능이 없는, PC와 USB로 연결하여 사용하는 프린터는 여럿이 사용하기 불편하다. 그런데, 공유기가 있으면 공유기를 이용해서 네트워크 프린터로 만들 수 있다. ipTIME 공유기로 네트워크 프린터로 만드는 방법을 알아본다. 공유기에 프린터 연결  ipTIME 공유기에 USB 포트가 있다. 프린터와 연결하고 프린터 전원을 켠다. 공유기 관리자 페이지로 가서 를 클릭한다. USB 포트에 프린터가 있는지 확인한다. 에서 네트워크 ...

KT UHD 셋톱박스 / 외장하드 연결하여 동영상 보는 방법

KT UHD 셋톱박스 / 외장하드 연결하여 동영상 보는 방법

UHD 셋톱박스 올레 기가 UHD TV를 이용하고 있습니다. TV가 FHD지만 셋톱박스 성능이 좋다고 해서, 여러 기능이 있다고 해서 UHD TV를 이용합니다. (스마트 셋톱박스 정도면 충분하기는 한데, KT에서 단종이라고 하네요.) UHD 셋톱박스라고 해서 모든 게 좋아진 것은 아닙니다. 가장 불편한 것은 LAN 포트입니다. 구형은 LAN 포트가 두개였는데, 한 개로 줄었습니다. 즉, 수신만 하고 중계는 못하는 것이죠. 그것 ...

Ubuntu 18.04 Server / 언어 변경하는 방법

Ubuntu 18.04 Server / 언어 변경하는 방법

현재 언어 확인하기 locale 명령어로 현재 언어가 무엇인지 확인할 수 있습니다. # locale LANG=en_US.UTF-8 LANGUAGE= LC_CTYPE="en_US.UTF-8" LC_NUMERIC="en_US.UTF-8" LC_TIME="en_US.UTF-8" LC_COLLATE="en_US.UTF-8" LC_MONETARY="en_US.UTF-8" LC_MESSAGES="en_US.UTF-8" LC_PAPER="en_US.UTF-8" LC_NAME="en_US.UTF-8" LC_ADDRESS="en_US.UTF-8" LC_TELEPHONE="en_US.UTF-8" LC_MEASUREMENT="en_US.UTF-8" LC_IDENTIFICATION="en_US.UTF-8" LC_ALL= 언어 변경하기 사용할 언어를 먼저 설치합니다. 한국어를 사용하고 싶다면 다음과 같이 명령합니다. # apt-get install language-pack-ko /etc/default/locale을 열고 다음과 같이 만듭니다. LANG=ko_KR.UTF-8 테스트하기 새로 로그인하거나 재부팅하면 변경한 언어가 적용됩니다. 의미 없는 문자열을 입력해보거나... # 123 123: 명령을 찾을 수 없습니다 locale 명령어로 확인할 수 있습니다. # locale LANG=ko_KR.UTF-8 LANGUAGE= LC_CTYPE="ko_KR.UTF-8" LC_NUMERIC="ko_KR.UTF-8" LC_TIME="ko_KR.UTF-8" LC_COLLATE="ko_KR.UTF-8" LC_MONETARY="ko_KR.UTF-8" LC_MESSAGES="ko_KR.UTF-8" LC_PAPER="ko_KR.UTF-8" LC_NAME="ko_KR.UTF-8" LC_ADDRESS="ko_KR.UTF-8" LC_TELEPHONE="ko_KR.UTF-8" LC_MEASUREMENT="ko_KR.UTF-8" LC_IDENTIFICATION="ko_KR.UTF-8" LC_ALL=

가비아 / 도메인 구입하는 방법

가비아 / 도메인 구입하는 방법

가비아에서 shop 도메인을 500원에 판매하는 이벤트를 한다. 주의할 점은 갱신할 때는 5만 원이라는 것. 잠시 사용할 테스트용 도메인이 필요하여 가비아에서 shop 도메인을 구입했다. 구입하는 과정은 다음과 같다. 회원 가입 가비아에 회원 가입을 먼저 한다. 가입하는 과정은 생략한다. 가비아 홈페이지 : https://www.gabia.com/ 도메인 검색 도메인 사이트(https://domain.gabia.com/)에서 도메인 검색을 한다. 검색어에 대한 다양한 도메인과 가격을 볼 수 있다. ...

리눅스 / 명령어 / mkdir / 디렉토리 만드는 명령어

리눅스 / 명령어 / mkdir / 디렉토리 만드는 명령어

mkdir은 make directory의 약자로, 디렉토리를 만드는 명령어이다. abc 디렉토리를 만든다. # mkdir abc abc 디렉토리 아래에 def 디렉토리를 만든다. 만약 abc 디렉토리가 없다면 def 디렉토리를 만들 수 없다는 메시지가 나온다. # mkdir abc/def p 옵션을 붙이면 abc 디렉토리가 없어도 abc 디렉토리를 만든 후에 def 디렉토리를 만든다. # mkdir -p abc/def 리눅스 / 명령어 / rm / 파일 ...

PuTTY / 소개

PuTTY / 소개

PuTTY는 원격 컴퓨터와의 통신을 위한 무료 오픈 소스 터미널 에뮬레이터 및 네트워크 파일 전송 응용 프로그램입니다. 주로 SSH, Telnet, rlogin, 및 SCP를 사용하여 네트워크를 통해 다른 컴퓨터에 접속하고 관리하는 데 사용됩니다. PuTTY는 Windows를 비롯한 다양한 운영 체제에서 사용할 수 있으며, 그 간편함과 기능성으로 인해 시스템 관리자 및 네트워크 엔지니어들 사이에서 ...