#1부록-스킵가능 (모니터 연결 없이 사용) Robotis로보티즈-turtlebot3 burger SBC 셋팅하기, 라즈베리파이용 포트포워딩 SSH port forwarding

By qsp , Created on 2nd Mar 2022

터틀봇3 버거의 라즈베리파이를 모니터로 직접 연결해서 사용하지 못하는 경우에 사용할 수 있는 방법인데
ssh를 이용하는 방법을 포스팅 해본다

물론 미니hdmi로 모니터를 연결한 경우에는 ssh 연결을 할 필요가 없고 이 포스팅은 skip 하면 되겠다~

라즈베리파이 포트포워딩으로 ssh 접속하기 - Turtlebot3 burger

전에 HDMI 케이블이 없어서 모니터 없이 할 수 있는 방법을 찾다보니
포트포워딩을 통해서 ssh 접속을 해본적이 있었는데
전에 해봤던 경험을 유용하게 다시 한번 써먹게 되었다~

라즈베리파이4B는 mini-HDMI 케이블이 필요하다. 보통의 HDMI 단자였는데
mini-HDMI로 업그레이드가 되어서 케이블도 따로 준비해야한다

그런데 문제는 보통의 HDMI 케이블 밖에 없다는 것
그래서 일단 포트포워딩으로 ssh 방식으로 하기로 했다 (케이블은 다음에 사지 뭐..)

먼저
이를 하려면 wifi 무선공유기가 있어야 하며 라즈베리파이에도 wifi파일 설정이 되어 있어야한다

이 방법은 터틀봇에 직접 모니터 연결 없이 진행할 수 있고 무선으로 접속해서 사용하는 방법
하지만 괜히 무선 공유기 설정해줘야하고 일을 만드는 것이라
미니HDMI 케이블을 구하고 모니터 연결해서 하는 것을 추천!

단 이 방법은 터틀봇3 e-메뉴얼에 나와있는 방법은 아님에 주의해주세요

SBC셋팅 먼저

그리고 전에 포스팅 했었던

rpi-포트포워딩 보러가기-SK무선공유기

참고하자


무선공유기의 설정하기

내 컴퓨터에는 유선랜으로 연결되어 있으므로 무선공유기의 설정페이지를 들어갈 수가 없다
그래서 무선랜으로 들어가기 위해서 간단하게 스마트폰을 이용하는 것이 편하다

스마트폰의 웹 브라우저에 192.168.0.1을 주소칸에 입력을 하게 되면 무선공유기의 설정페이지를 들어갈 수 있다

무선공유기 회사마다 다를 수 있으므로 자신의 모델을 검색 후 사용

지금은 TP_link 의 무선공유기를 사용하고 있는데
id가 초기셋팅이 admin 이고 비번도 admin 이다
로그인을 하자~ 이제 무선 공유기 설정 페이지를 볼 수 있을 것이다

이제 터틀봇3 버거의 전원을 켜준다 (또는 라즈베리파이에 핸드폰 충전기를 연결해도 된다)
터블봇3의 무선 인터넷이 연결되는 약 1분 정도 기다려주면 될 듯하다

터블봇3의 라즈베리파이의 MicroSD카드의 wifi SSID와 비번을 잘 입력했다면
자동으로 내부 ip를 할당받게 된다

이제 다시 무선 공유기 설정 페이지에서 DHCP 메뉴의 DHCP 클라이언트 목록을 보게 되면
무선공유기에서 할당된 단말기들이 표시가 된다

클라이언트 이름 ubuntu를 보자. 할당된 ip는 192.168.0.103 로 되어 있다
private ip 주소로 되어 있다

SK 무선 공유기 설정에서는 관리탭-커넥션 통계-IP별 커넥션 정보로 ip를 확인이 가능했다
이처럼 무선공유기 마다 다르지만 잘 찾아보면 ip 목록을 찾을 수 있을 것이다

포트포워딩을 할 차례이다

포트포워딩은 어떤 ip 에 특정 포트번호를 이용해서 접속하려고 할 때
미리 설정된 포트번호로 넘겨주는 것인데
외부에서 접속할 수 없는 내부 사설망 ip 주소로 연결해 줄 수 있게 된다

이제 포워딩 메뉴의 포트 포워딩 메뉴를 눌러주자

여기에서 서비스 포트는 어떤 포트번호를 임의로 지정해주는 것이고 이 포트번호는
ssh 접속을 시도할 때 이 포트번호를 사용하게 된다

서비스포트는 자신만이 알 수 있는 것으로 입력해준다. 10111로 입력해줬다
기존에 쓰고 있는 약속되어 있는 22, 23, 80 등의 포트번호는 피한다. 겹치지 않는 임의의 숫자로 하면 된다

내부포트는 ssh 포트를 사용할 것이므로 22번이라고 입력한다

ip주소를 입력한다. 위에서 찾은 ubuntu 할당받은 주소를 입력한다
192.168.0.103 (본인의 할당 받은 주소를 넣어주기)

이제 저장을 한 후에 공유기 재부팅을 메뉴를 찾아서
공유기를 재부팅을 시켜줘야지 적용이 된다

이제 정리를 해보면 특정 서비스포트 10111로 요청이 들어오게 되면
내부포트 22번을 이용해서 (ssh를 사용하기 위해 포트번호22)
내부ip로 설정해둔 ubuntu로 접속이 되게 되는 것

그리고 외부에서 들어오는 ip주소를 확인해준다. 대개는 처음 화면에서 확인할 수가 있다
전체 네트워크 상태화면을 볼 수가 있는데 WAN 부분에서 IP 주소를 찾아본다
(따로 메모나 복사를 해놓자-이 ip 주소로 ssh로 접속하게 된다)


ssh로 접속하기

이어서 ssh로 접속하기
본인 컴퓨터를 이용 터미널을 열어주고 ssh를 사용해서 본인의 ip를 입력해준다

첫번째로는 위에서 확인했던 외부 ip를 (WAN) 통해서 접속을 하게 된다
그리고 접속할 id (유저명)을 넣어야 한다
마지막으로 포트포워딩에서 서비스 포트로 입력했던 10111이라는 것을 -p 옵션으로 넣어주게된다

터미널에서 ssh 명령어로 사용
id@ip주소 -p 포트번호 인데, 터틀봇3의 사용자 이름은 ubuntu 이다

$ssh ubuntu@59.14.35.123 -p 10111

Are you sure you want to continue connecting (yes/no/[fingerprint])?
이런식으로 나오면 yes를 눌러주고 패스워드를 입력하라고 나오면 turtlebot 입력해주면 된다

$ssh ubuntu@59.14.35.123 -p 10111
ubuntu@59.14.35.123's password: 
Welcome to Ubuntu 20.04.3 LTS (GNU/Linux 5.4.0-1042-raspi aarch64)

터틀봇3 라즈베리파이 ros2에 로그인이 되면 유저명이 바뀌고 아래처럼 나오면 잘 로그인이 된 것이다

ubuntu@ubuntu:~$ ls

마지막으로 ssh 접속을 끊으려면 exit를 눌러주면 빠져나올 수 있다.

댓글

댓글이 없습니다.