라즈베리파이 VNC 사용해서 원격으로 접속하자!

By qsp , Created on 17th May 2021

포트 포워딩을 설정해서 외부에서 접속을 시도해 봅시다~

라즈베리파이의 VNC server 를 실행 시키고, VNC client를 실행해서 원격에서 raspberry pi를 접속~
꽤 재미있습니다 ㅋㅋ

headless vnc 접속하기

처음에 모니터, 키보드 등을 연결해서 셋팅하는게 정신 건강에 좋습니다. 그리고 내부망 (사설ip)으로 같은 네트워크에 있어야 쉽게 연결할 수 있습니다.


하지만! headless 접속을 시도해보자~
사람마다 환경이 다르니 어쩔 수 없이... 라즈베리파이를 원격으로 접속할 수 있는 경우가 생길 수도 있는 것 아닌가? 😉

먼저 ssh로 접속을 해야한다. 위에서 말한대로 네트워크 사설ip로 같은 내부망을 사용하면 편하다.
외부에서 접속을 해야하는 경우라면 (ex. 컴퓨터는 유선랜, 파이는 무선랜일 경우, 그냥 외부에서 사용하고 싶을 때?)
단, 공유기를 접속할 수 있어야 합니다. (예: 집 공유기)

여기를 참고하세요- 포트 포워딩 하기

먼저 라즈베리 파이가 켜지고 부팅이 되었다싶으면 ㅋㅋ ssh 접속

$ ssh pi@192.168.0.100

또는, 포트 포워딩이 된 경우 (-p 옵션에 외부포트번호를 적어주기)

$ ssh pi@222.124.50.100 -p 9876

비번을 입력하고 로그인을 한 다음에, raspi-config 을 실행

sudo raspi-config

CLI 이지만 나름 편한 셋팅이 나온다. 화살표로 이동해서 3 Interface Options 를 선택해준다

그 다음 VNC 기능을 enable 해준다.

그리고 저장


옵션 사항
이번에는 2 Disply Options를 선택 후 -> D1 Resolution 선택


그리고 적당한 해상도를 선택한다.

The resolution is set to DMT mode 85

엔터를 누른 후에 OK를 눌러준다, 필요에 따라 재부팅을 할 수도 있다.


마지막으로 Tab을 누르면
Finish로 이동할 수 있다. 엔터를 눌러서 빠져나온다


이제 라즈베리파이의 ip를 확인 하자

ifconfig

무선랜으로 되어 있다면 wlan0 의 주소 확인, 유선이면 eth0

wlan0: flags=4622<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
    inet 192.168.30.100

vnc를 위한 포트포워딩

바로 접속할 수 있는 환경이면 아래 방법은 스킵하자~ 예: 같은 네트워크 일때

Port Forwarding을 한번 더 해야한다. 이번에는 vnc를 할 수 있게 해줘야하기 때문이다

외부에서 접속을 시도하려면
사설 ip 내부망으로 접속을 할 수가 없으므로 공유기의 포트포워딩 기능을 사용해준다 ssh에서 설정했던것과 동일하다..

먼저 외부에서 접속할 서비스 포트번호를 넣어 준다. 이거는 임의의 포트번호가 된다. 겹치지만 않으면되고 원래 기존의 포트번호도 된다. vnc는 5900포트를 사용한다.

그래서 외부 서비스포트는 내맘대로, 예를 들어 9900으로 설정

여기는 중요 ifconfig로 확인했던 ip를 입력해준다
내부아이피는 192.168.30.100
포트번호에는 5900, VNC는 5900포트를 사용한다. (외부 포트는 임의로 해도 되지만, 반대로 내부포트는 실제 포트번호를 적어줘야한다)

추가/저장을 한다.

그리고 외부ip 주소를 확인한다. WAN 또는 외부 ip로 나오는 주소를 메모하자

인터넷은 SK 기준입니다. 하지만 다른 인터넷 회사, 공유기에 따라 조금씩 다르지만 포트 포워딩 메뉴는 다 있고 조금씩 다르지만 결국 입력해야할 외부포트, 내부ip, 포트번호 입력은 비슷할 것 입니다.


이제 포트포워딩 관련해서 추가가 되었을 것이고.. 재부팅 해줘야지 적용이 된다. 꼭 재부팅을 해주자~ (재부팅을 안해서 고생한 1인)

위에서는 서버쪽 즉, raspberry pi 의 VNC 서버를 가동 시켰다.

이제 메인 데스크탑으로 와서 vnc 클라이언트를 설치해주자~

https://www.realvnc.com/en/connect/download/vnc/

암튼 본인의 데스트탑에 맞는 것을 설치해준다.

현재 CentOS를 사용하고 있으므로 rpm버전 x64로 받은다음에 설치

rpm -ivh VNC-Viewer-6.20.529-Linux-x64.rpm

우분투, 맥, windows 버전 별로 가능하니 다운로드 후 설치


VNC 실행

이제 vnc를 실행하자! vnc view를 실행하면

new connection 으로 접속 할 수 있게 만들어 주는데

VNC Server 에 ip주소를 적어주면 된다.
포트포워딩을 했으므로.. 외부 ip, 즉 공인 ip를 적어준다.

예를 들어 아래처럼 해주면 된다.. ip주소 뒤에 : (콜론)을 쓰고 포트번호를 적어준다(임의로 적어준 포트) 9900

222.124.50.100:9900

다른것은 별로 건들게 없고 OK를 누르고 저장이 되면
마우스 오른쪽 버튼을 누르고 connect를 해주면 된다.

그러면 바로 아이디와 비번을 입력하면 된다.

만약 비번을 안 바꿨다면, 유저는 pi, 비번은 raspberry

잘 된다! 오 신기하구먼~~!



그냥 삽질... 기록

처음에는 포트포워딩을 하고 재부팅을 안해서.;;
되는지 안되는지도 모르고 시간허비하다가..
몇번 테스트를 했더니 재부팅을 해야한다는 결론이 나왔고~

그 다음에는 아이피를 잘못적는 삽질을 한 끝에
아 vnc는 포트포워딩 방식은 안되는 구나 하다가~

ip주소를 올바르게 넣은다음에 잘 되는 것에...정말 기쁘긴 했지만 오늘도 삽질 내일도 삽질.. ㅋㅋ

그래도 (스킬) 우물이 깊어지고 이동네 저동네 우물을 다 파고 있는거 같지만
뭐.. 결론은 뿌듯하다는 얘기~

댓글

댓글이 없습니다.