Как настроить статический IP-адрес на Raspberry Pi 3

Raspberry Pi 3. Присвоение статического IP-адреса

Дата Автор Dmitry4 комментария 4 037 просмотров

С настройками по умолчанию Raspberry Pi присваивается динамический (т.е. случайно выбранный) IP-адрес внутри локальной сети.

Это удобно тем, что это работает «из коробки» и не нуждается в какой-либо настройке. И неудобно, если Raspberry Pi будет использоваться в качестве локального сервера.

Представьте, установили вы кучу сервисов, которые доступны по сети по IP-адресу, вы привыкли пользоваться этим IP-адресом, вбили его в настройки и закладки на всех своих устройствах. Тут возникает необходимость перезагрузки роутера, а после перезагрузки роутер присваивает «малине» уже совсем другой IP-адрес. И все пути доступа придется переписывать заново.

Что делать? Принудительно назначить статический IP-адрес в настройках Raspbian и навсегда забыть о подобной проблеме.

Что нам понадобится

Для осуществления описываемых в этой статье действий понадобится:

Настройка статического IP-адреса в Raspbian

В интернете опубликовано множество инструкций по присвоению статического IP для Raspberry Pi, и практически все они сводятся к одному из двух вариантов:

  • Правка конфигурации в /etc/network/interfaces
  • Остановка DHCP-демона

Так вот, первый вариант в новых релизах Raspbian не работает совсем: после очередного обновления «малина» начинает игнорировать это файл конфигурации, а сетевые настройки получает по DHCP-протоколу. А второй вариант хоть и рабочий, но избыточен: зачем полностью отключать у себя DHCP, если можно его просто обойти?

Поэтому пойдем другим путем: пропишем статический IP-адрес в конфигурации DHCP, но сам DHCP-демон отключать не будем.

Но перед этим нужно узнать IP-адрес роутера в своей локальной сети. Обычно он выглядит как 192.168.0.1 или 192.168.1.1. Если вы его знаете — отлично. Если нет — его всегда можно посмотреть, выполнив консольную команду:

netstat -r –n

Как настроить статический IP-адрес на Raspberry Pi 3

Адрес шлюза — это и есть IP-адрес роутера. Запомним его.

Узнав IP-адрес роутера, отредактируем файл конфигурации DHCP на Raspberry Pi:

sudo nano /etc/dhcpcd.conf

Допишем в конце строку:

nodhcp

И после этой строки назначим статический адрес для Ethernet-подключения:

interface eth0
static ip_address=192.168.0.243/24
static routers=192.168.0.1
static domain_name_servers=192.168.0.1

И для подключения через встроенный Wi-Fi-адаптер:

interface wlan0
static ip_address=192.168.0.243/24
static routers=192.168.0.1
static domain_name_servers=192.168.0.1

Если вместо встроенного Wi-Fi по каким-то причинам используется внешний Wi-Fi адаптер (например, вас не устраивает уровень приема сигнала встроенного адаптера и вы подключаете более мощный адаптер с антенной), то его интерфейс будет называться уже wlan1, а конфигурируется он аналогичным образом:

interface wlan1
static ip_address=192.168.0.243/24
static routers=192.168.0.1
static domain_name_servers=192.168.0.1

Из текста настроек понятно, что в строке static ip_address прописывается желаемый статический IP-адрес «малины», а в строках static routers и static domain_name_servers прописывается IP-адрес роутера.

После этого остается только перезагрузить Raspberry Pi для применения изменений:

sudo reboot

Заключение

Назначение статического IP-адреса — одно из первых действий, которые нужно сделать на Raspberry Pi после установки и настройки OS Raspbian, если «малина» будет задействована в качестве локального сервера.

Единожды потраченные 5 минут на правку файлов конфигурации навсегда избавят от возможных неудобств с внезапным изменением IP-адреса «малины» в будущем.

Raspberry Pi 3B (английская сборка)в интернет-магазине GearBest Raspberry Pi 3B (китайская сборка)в интернет-магазине GearBest

Понравилась статья? Выразите благодарность автору переводом любой суммы на ваше усмотрение :)

4 комментария на «Raspberry Pi 3. Присвоение статического IP-адреса»

  1. Если посмотреть man файла dhcpcd.conf, то в примере для статического адреса показано присвоение маски подсети:
    ~:# man dhcpcd.conf
    static ip_address=192.168.0.243/24
    Если можно, вопрос. У вас IP-адреса eth0 и wlan0 одинаковые. Как вручную указать Raspberry Pi через какой интерфейс вы хотите к ней подключиться?

    • >Если посмотреть man файла dhcpcd.conf, то в примере для статического адреса показано присвоение маски подсети:

      Да, вы правы. Забыл про маску подсети. Поправил статью, спасибо.

      >Если можно, вопрос. У вас IP-адреса eth0 и wlan0 одинаковые. Как вручную указать Raspberry Pi через какой интерфейс вы хотите к ней подключиться?

      Можно прописать нужный интерфейс подключения в /etc/network/interfaces.
      Или в графическом интерфейсе Raspbian выбрать нужное подключение (wlan или ethernet), а ненужное соединение отключить — эти настройки вроде как запоминаются.

      Я ориентировался на то, что wlan мне не нужен (слишком сильные просадки по скорости по сравнению с ethernet-подключением) и использоваться будет только ethernet. Но если по какой-то причине придется отключить кабель и временно использовать wi-fi, то для удобства хотелось бы иметь доступ по тому же ip-адресу. Поэтому вписал один и тот же ip в обоих интерфейсах подключения.

  2. Я, чисто из спортивного интереса, включил оба интерфейса. Снаружи подключаюсь к малинке по SSH. Через eth0 по IP:192.168.1.133 подключается идеально. А с wlan0 проблема. ifconfig не показывает присвоения IP-адреса, хотя я пытался и через DHCP и статически задать 192.168.1.132. Соответственно через wlan0 SSH не подключается. При этом wlan0 работает. Команда iwlist wlan0 scan | grep «ESSID\|IE: IEEE» показывает мою Wi-Fi сеть поднятую моим роутером.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *