개요
유/무선 네트워크에 연결된 라즈베리파이는 IP 주소를 부여받습니다. PC와 같은 다른 장치에서 SSH 등으로 라즈베리파이에 접속하거나, 공유폴더 기능을 이용하고자 한다면 이 IP 주소 값을 알아야 합니다.
라즈베리파이에 모니터가 연결되어 있다면, IP 주소를 간단히 확인할 수 있습니다. 때문에 리눅스 및 네트워크에 대해 익숙하지 않은 경우 그 외의 방법을 살펴보지 말고 모니터와 키보드를 라즈베리파이에 직접 연결한 후 확인할 것을 강력히 추천합니다.
라즈베리파이에 모니터가 직접연결된 경우
라즈베리파이의 터미널을 사용하여 라즈베리파이의 IP주소를 알 수 있습니다. hostname -I
를 입력하면 IP 주소가 화면에 표시됩니다. (I는 대문자로 입력합니다.)
$ hostname -I
192.168.0.3
라즈베리파이에 모니터를 연결하지 않은 경우
저라면 권장하지 않지만 모니터를 라즈베리 파이에 연결하지 않은 경우도 물론 IP 주소를 확인할 수 있습니다.
라우터(공유기) 장치 목록
하나의 인터넷 회선으로 여러 PC 및 스마트폰에서 동시에 인터넷을 사용하기 위해 각 가정에는 보통 유무선 공유기를 사용합니다. 그리고 이런 공유기는 각종 설정 및 상태를 조회할 수 있는 관리자 페이지를 제공하는데 여기에는 공유기와 연결되어 있는 장치의 IP 주소도 제공됩니다.
※ 관리자 페이지는 공유기와 연결되어 있는 장치의 웹브라우저에서 접근할 수 있지만, 접근을 위한 주소는 각 제조사 별로 상이하기 때문에 별도로 알아보아야 합니다. 이번 포스트는 제가 사용하고 있는 IPTIME 공유기를 기준으로 작성되어 있습니다.
만약 여러분이 라즈베리파이와 유무선 공유기를 연결해 놓았다면, 해당 관리자 페이지에서 라즈베리파이의 IP 주소를 얻을 수 있습니다.
유무선 공유기에 연결된 피씨 또는 스마트폰의 웹브라우저의 주소창에 192.168.0.1을 입력합니다. 평소에 관리를 하지 않았다면 기본 아이디와 암호인 admin/admin으로 접속합니다. 아이디와 암호를 변경한 경우, 본인이 설정한 아이디와 암호로 로그인합니다.
로그인 후, 관리 도구를 선택합니다.
다시 좌측의 메뉴에서 고급설정-> 네트워크 관리-> 내부 네트워크 정보를 선택합니다. 화면에 해당 공유기에 연결된 장치의 이름 및 IP 주소 값이 표시되는 것을 볼 수 있습니다.
다음 그림은 저희 집 공유기에 연결되어 있는 장치의 모습으로 여기에서 라즈베리파이의 IP주소를 확인할 수 있습니다.
mDNS를 사용하여 IP주소 찾기
mDNS는 로컬 네트워크에 호스트명과 일치하는 장치의 IP를 알려주는 프로토콜이며, Avahi는 이 프로토콜을 제공하는 리눅스용 소프웨어입니다.
라즈비언에는 Avahi가 기본적으로 설치되어 있기 때문에 multicast DNS서비스가 제공됩니다.
기본적으로 라즈비언을 설치하면 호스트명은 raspberrypi
입니다. IP를 모르는 경우는 대개 라즈비언을 설치한 직후 이므로 다음과 같이 명령을 입력하여 IP주소를 찾을 수 있습니다.
$ ping raspberrypi.local
라즈베리파이와 동일한 네트워크에서 명령을 입력했다면 다음 그림과 같이 IP주소를 확인할 수 있습니다.
PING raspberrypi.local (192.168.0.3) 56(84) bytes of data.
64 bytes from 192.168.0.3 (192.168.0.3): icmp_seq=1 ttl=64 time=0.098 ms
64 bytes from 192.168.0.3 (192.168.0.3): icmp_seq=2 ttl=64 time=0.105 ms
nmap 명령어
만약 라즈베리파이의 호스트명을 임의로 바꾸었고, 유무선 공유기의 관리자 페이지를 통해 확인할 수 없다면 직접 모니터를 연결하여 확인하는 것이 오히려 간편할 것입니다. 그럼에도 불구하고 필요하다면, 해당 네트워크 전체를 검색해 라즈베리파이를 찾을 수도 있습니다.
nmap
은 무료 공개소스 네트워크 검색도구입니다. 리눅스를 비롯하여, macOS 및 윈도우즈에서도 사용이 가능하며 이 도구를 사용하여 라즈베리파이의 IP를 찾는 것도 가능합니다.
우선 PC에 설치된 운영체제에 따라 nmap
도구를 설치합니다.
-
Linux에서는
sudo apt-get install nmap
이라고 명령어를 입력합니다. -
Windows는 nmap 다운로드 페이지로 이동하여 안내에 따라 도구를 설치합니다.
nmap
을 설치한 PC와 동일한 네트워크에 라즈베리파이가 있다고 가정하였을 때, 검색의 범위는 해당 네트워크 전체가 됩니다.
이를 위해 네트워크 주소를 알아내야 합니다.
- Linux에서는 터미널에서
ifconfig
라고 명령어를 입력합니다. - Windows 의 명령어 창에서
ipconfig
라고 명령어를 입력합니다.
다음 그림과 같이 해당하는 PC의 네트워크 설정 정보가 표시됩니다.
그림의 PC의 IP는 192.168.0.4입니다. 서브넷 마스크 항목은 255.255.255.0입니다. 네트워크 주소는 IP 주소와 서브넷 마스크 항목을 이용하여 산출할 수 있습니다.
IP주소는 네트워크 주소와 호스트 주소 두 개의 정보를 포함하고 있습니다. IP주소의 어느 부분이 네트워크 주소부분인지, 어느 부분이 호스트 주소부분인지에 대한 정보를 포함한 숫자를 서브넷 마스크라고 합니다. 이 역시 IP주소와 동일한 32비트 숫자의 형태로 제공됩니다. 제 경우 서브넷 마스크가 255.255.255.0입니다. 이진 표기법에서는 255가 11111111에 해당하므로 이 서브넷 마스크를 이진 표기법으로 변환한다면 다음과 같습니다.
11111111.11111111.11111111.0000000
IP 주소와 서브넷 마스크를 나란히 놓으면 주소의 네트워크 부분과 호스트 부분을 아래와 같이 분리할 수 있습니다.
11000000.10101000.000000000.00000100 -- IP address (192.168.0.4)
11111111.11111111.11111111.00000000 -- Subnet mask (255.255.255.0)
처음 24비트(서브넷 마스크에서 1로 이루어진 숫자)는 네트워크 주소이고 마지막 8비트(서브넷 마스크에서 나머지 0으로 이루어진 숫자)는 호스트 주소입니다. 이 숫자가 의미하는 것은 아래와 같습니다.
11000000.10101000.00000000.00000000 -- Network address (192.168.0.0)
00000000.00000000.00000000.00000100 -- Host address (000.000.000.4)
이제 255.255.255.0이라는 서브넷 마스크를 사용하는 제 네트워크 주소는 192.168.0.0이고, 호스트 주소는 0.0.0.4라는 것을 알 수 있습니다. 따라서 제가 사용하는 네트워크의 주소 범위는 192.168.0.1 ~ 192.168.0.255입니다.
이제 네트워크 주소를 알았으니, nmap
명령어에 -sn
옵션 (ping scan)을 넣어 검색을 시작합니다. 여기서 192.168.0.0 은 저의 네트워크 주소를, 24는 앞서 살펴보았던 서브넷 마스크 값을 2진수로 표현했을 때 1의 개수를 의미합니다.
$ nmap -sn 192.168.0.0/24
이 명령어를 실행하면 해당 대역의 모든 IP로 ping을 보내고 응답이 있는 장치의 호스트명과 IP주소를 화면에 표시합니다.
nmap -sn 192.168.0.0/24
Starting Nmap 7.70 ( https://nmap.org ) at 2019-04-16 22:39
Nmap scan report for 192.168.0.1
Host is up (0.0013s latency).
MAC Address: 00:00:00:00:00:00 (EFM Networks)
Nmap scan report for 192.168.0.3
Host is up (0.0020s latency).
MAC Address: 00:00:00:00:00:00 (Raspberry Pi Foundation)
Nmap scan report for 192.168.0.4
Host is up.
Nmap done: 256 IP addresses (3 hosts up) scanned in 8.85 seconds
여기에서 호스트명이 raspberrypi
인 장치의 IP 주소가 192.168.0.3
인 것을 알 수 있습니다.
결론
라즈비언 설치 후 다양한 방법으로 라즈베리파이의 IP를 확인하는 방법을 알아보았습니다. IP주소를 확인하면 본격적으로 라즈베리파이를 사용하여 다양한 작업을 수행할 수 있게 됩니다.
마지막으로 다시 한번 강조한다면 네트워크에 관한 기초적인 지식이 없다면 간단히 모니터, HDMI 케이블, USB 타입의 키보드를 라즈베리파이에 직접 연결하여 IP주소를 확인하기를 권장합니다.
출처
'라즈베리파이 > 기초' 카테고리의 다른 글
라즈베리파이 - (라우터설정) 외부네트워크에서 접속하기 (0) | 2019.04.25 |
---|---|
라즈베리파이 - 인터넷연결확인하기 (0) | 2019.04.18 |
라즈베리파이 - 보안강화 (0) | 2019.02.08 |
라즈베리파이 - Raspbian 사용하기 (0) | 2019.01.30 |
라즈베리파이 - 운영체제(Raspbian) 설치 (0) | 2018.12.25 |