본문 바로가기

라즈베리파이

[라즈베리파이] 우리집 iot 허브 만들기 - 1 (os 설치, 와이파이 및 고정ip, ssh 설정)

우리집 기기를 자동 제어하고 싶어서 라즈베리파이 + 센서들을 샀다 직접 iot 허브???를 만들어보자.

 

1. 라즈비안 설치

2. ip, ssh 설정

 


1. 라즈비안 설치

 

라즈베리파이용 os이다 리눅스 기반이라서 많이 친숙했다. os 인스톨도 너무 쉬웠다.. 내가 어정쩡하게 설명하는 것보다 요기가 설명을 오조억배는 이해하기 쉬울 것 이다.. 

간단히만 설명하면, m2 usb reader기에 micro sd카드를 장착하여 

 

www.raspberrypi.org/downloads/raspberry-pi-os/

Operating system images – Raspberry Pi

The Raspberry Pi is a tiny and affordable computer that you can use to learn programming through fun, practical projects. Join the global Raspberry Pi community.

www.raspberrypi.org

요기서 os를 다운받아서 sd카드만 지정해주면 끝이다.

 

 

 

이렇게 os를 설정해주고 제일 위에 32비트 os를 누르면,

 

 

 

SD 카드를 설정할 수 있다.

 

 

 

write 버튼을 누르고 기다린 후, 라즈베리파이 연결부에 연결해주면 된다. 그리고 HDMI에 연결해주면 사용 가능하다. 이때 초기 설정 때문에 잠깐 GUI 모드 + 블루투스 키보드/마우스를 사용하였다.

 

 

** 마우스가 엄~청 느린 문제가 있었는데, /boot/cmdline.txt 파일을 수정하면 된다.

sudo nano /boot/cmdline.txt
...[공백]usbhid.mousepoll=0

 

 

 

/boot/cmdline.txt 제일 끝에 다음과 같이 수정해주면된다. 그 후 리부트 하니 해결되었다.

 

2. ip, ssh 설정

 

이제 라즈베리파이에 계속 hdmi를 끼워둘 수 없으니까 고정 ip + ssh 설정으로 본래 컴퓨터에서 cli로 라즈베리파이를 다루자!

 

2-1. 네트워크 인터페이스 찾기

 

 

 

ifconfig로 사용가능한 네트워크 인터페이스를 살펴보자. 나는 무선 사용 예정이니 wlan0을 사용했다.

 

** 유선 사용 시, www.ionos.com/digitalguide/server/configuration/provide-raspberry-pi-with-a-static-ip-address/

 

2-2. 네트워크 스캔하기

 

 

 

...

 

 

이런식으로 쭈르륵 와이파이 리스트가 나오는데, ESSID 값을 통해 원하는 와이파이 정보를 기억해두자.

 

2-3 고정 아이피 설정

 

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

원하는 텍스트 에디터로 들어가서, 

network={
    ssid="<networks-SSID>"
    psk="<networks-password>"
}

네트워크의 ssid, pw를 적어주면 된다. 마지막으로 고정 ip 설정을 해주자

 

sudo nano /etc/dhcpcd.conf

원하는 텍스트 에디터로 들어가서,

interface wlan0
static ip_address=<내부ip>
static routers=<게이트웨이>
static domain_name_servers=<공유기dns서버>

내부ip는 내가 설정할 ip주소, 나는 그냥 처음 wifi 연결 했을 때, ifconfig로 확인할 수 있는 ip로 설정했다.

 

 

 

route로 게이트웨이 주소를 확인할 수 있다.

 

 

 

공유기 dns서버는 와이파이에 입력했을 때, 게이트웨이 주소를 브라우저에 띄우면 확인할 수 있다.(아마 통신사, 공유기 제조사 마다 다를텐데, 나는 skb를 쓰고있고, 192.168.35.1 이었다.)

 

2-4 ssh 설정

 

이제 라즈베리 파이의 ssh를 enable로 바꿔준다.

sudo raspi-config

이렇게 들어가서..

 

 

 

이렇게 ssh를 켜주면 된다.

 

 

2-5 공유기 포트포워딩하기

 

현재 라즈베리파이는 집에있는 와이파이 공유기 하위 노드에 있는 네트워크이다. 그래서 외부망에서 접속할 수 있도록, 공유기의 ip에서 특정 포트번호와 라즈베리파이의 ssh 포트인 22번 포트를 연결해주면 끝이다.

 

 

 

 

각자 네트워크 공유기 설정에 가서 포트포워드 부분에 가서,(위에서 말한 공유기 주소로 들어가면 된다. 아마 디폴트 게이트워이일 것 이다)

 

 

나는 외부 22222번 포트와 내부 22번 포트를 연결했다. 이렇게 설정을 마치고, cmd 창을 열어서...

 

ssh <username>@<외부ip> -p<port-number>

username은 설정을 안했다면, pi이고 외부ip의경우 공유기의 외부ip, 포트번호는 포트포워딩한 포트번호를 쓰면된다.

 

 

 

이렇게 접속할 수 있다. 이제 귀찮게 모니터 번갈아가면서 안쓰고 cli로 라즈베리파이를 쓸 수 있땅

 


reference

라즈베리파이 os 설치 공식 가이드 : projects.raspberrypi.org/en/projects/raspberry-pi-setting-up

블루투스 마우스, 키보드 문제 : www.raspberrypi.org/forums/viewtopic.php?t=84999

라즈베리파이 고정 wifi ip : electrondust.com/2017/11/25/setting-raspberry-pi-wifi-static-ip-raspbian-stretch-lite/