모니터 없이도 IP 주소를 알고 싶다. [라즈파이]

개요


  • 라즈파이에 ssh 접속하고 싶지만 IP 주소 모르겠다고 말하는 그런 당신에게.

  • 주제에 들어가기 전에 ...



    평소 라즈파이를 운용하는 경우에 SSH나 VNC로 리모트 접속하고 있는 사람이라도, 셋업시는 모니터, 키보드 마우스라고 하는 입출력 기기를 라즈파이에 연결해, 직접 조작하고 있는 사람도 많지 않을까요.



    마우스도 키보드도 하나 있으면 좋고,
    모니터를 라즈파이에 1대 점유하는 것으로, 작업 공간 줄이고,
    뭐라면 RPi3부터는 Wi-Fi가 표준으로 붙어 있기 때문에, LAN 케이블조차 필요 없지요?



    디스플레이나 키보드, 마우스 등의 입출력 기기를 접속하지 않은 상태에서 컴퓨터를 운용하는 것을 헤드리스라고 합니다.
    필요없는 것은 생략하고 헤드리스화해 갑시다. 깨끗이합니다.

    전원만 있으면 라즈파이는 개발 환경을 정돈할 수 있습니다.
    아래에서는 그 방법을 소개합니다.

    헤드리스 RPI 초기 설정



    Raspberry Pi에서는 보안 관점에서 SSH가 기본적으로 비활성화되어 있으며 SSH 연결을 사용하려면 볼륨의 / 바로 아래에 ssh (확장자 없음) 파일을 넣어야합니다.

    또한 무선 LAN에 연결해야 하므로 SSID와 비밀번호를 설정해야 합니다.
    또한 볼륨의 / 바로 아래에 wpa_supplicant.conf라는 파일을 만들고 내용에 필요한 정보를 쓰면 /etc/wpa_supplicant/wpa_supplicant.conf에 자동으로 기록됩니다.

    wpa_supplicant.conf
    country=JP
    ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
    update_config=1
    network={
        ssid="test"
        psk="abcd1234"
    }
    

    windows의 경우



    이것으로 헤드리스시 설정이 완료됩니다.

    IP 주소 획득



    ssh 연결에는 IP 주소, 사용자 이름, 암호가 필요합니다.
    라즈파이는 기본 사용자 이름이 pi암호가 raspberry입니다.
    따라서 사용자 이름과 암호를 확인할 필요는 없지만 IP 주소를 알아야합니다.
    IP 주소를 조사하는 쉘 스크립트를 만들었습니다.

    your_IP.sh
    echo 192.168.1.{1..254} | xargs -P256 -n1 ping -s1 -c1 -W1 | grep ttl | sort -n -k 4 -t "." | cut -f 4 -d " " > a.txt
    read -p "Ready??(press Enter): "
    echo 192.168.1.{1..254} | xargs -P256 -n1 ping -s1 -c1 -W1 | grep ttl | sort -n -k 4 -t "." | cut -f 4 -d " " > b.txt
    diff b.txt a.txt > /dev/null 2>&1
    if [ $? -eq 1 ]; then
     diff --old-line-format='%L' --new-line-format='%L' --unchanged-line-format='' a.txt b.txt
    fi 
    rm a.txt
    rm b.txt
    

    설명
    사용 중인 IP 주소 확인
    -> Enter 키를 누를 때까지 기다린다 (그 사이에 라즈파이 붙이기)
    -> 다시 사용하는 IP 주소를 확인
    -> 차분한다. 끝.

    또한 Fing이라는 네트워크 스캐너 앱에서도 IP 주소를 쉽게 확인할 수 있습니다. 매우 편리합니다.

    Google Play
    Apple Store

    좋은 웹페이지 즐겨찾기