• I






      
           

Научно-популярный образовательный ресурс для юных и начинающих радиолюбителей - Popular science educational resource for young and novice hams

Основы электричества, учебные материалы и опыт профессионалов - Basics of electricity, educational materials and professional experience

КОНКУРС
language
 
Поиск junradio

Радиодетали
ОК
Сервисы

Stock Images
Покупка - продажа
Фото и изображений


 
Выгодный обмен
электронных валют

Друзья JR



JUNIOR RADIO

 

Простой WiFi-мост Raspberry Pi

 

 

Мост Wi-Fi Raspberry Pi - один из лучших способов предоставить доступ в Интернет для устройства, которое поддерживает только соединение Ethernet. В этом руководстве мы покажем вам, как настроить мост WiFi и как правильно настроить dnsmasq, чтобы любое устройство могло без проблем подключаться через ваш Pi. Вам нужно иметь в виду, что вы не увидите таких высоких скоростей, как при прямом подключении к маршрутизатору. Поскольку есть некоторые накладные расходы, связанные с подключением через Raspberry Pi. Не забудьте, что для выполнения этого руководства вам понадобится либо ключ Wi-Fi, либо Raspberry Pi 3 со встроенным модулем WiFi . Это руководство можно комбинировать с нашей базовой точкой доступа VPN, вы можете найти руководство о том, как настроить это, сразу после этого руководства. По сути, он покажет, как настроить клиент OpenVPN и перенаправить весь трафик через этого клиента.

 

Настройка моста WiFi

Чтобы настроить мост Raspberry Pi Wifi, мы будем использовать пакет dnsmasq , этот пакет выполняет большую часть основной работы для этого руководства.

Dnsmasq - это пакет, который действует как локальный DHCP-сервер и как локальный DNS-сервер. Мы используем этот пакет, чтобы мы могли назначать IP-адреса и обрабатывать DNS-запросы через сам Raspberry Pi и действовать как маршрутизатор. Один из бонусов использования dnsmasqявляется то , что она очень проста в настройке, будучи несколько легкий по сравнению с isc-dhcp-serverи bind9пакетов. Помните, что для этого руководства вам понадобится активный маршрутизатор Wi-Fi для подключения и устройство Ethernet, с которым вы собираетесь установить мост для подключения Wi-Fi.

1. Прежде чем мы начнем установку и настройку наших пакетов, мы сначала запустим обновление на Raspberry Pi, введя следующие две команды в терминал.

sudo apt-get update

sudo apt-get upgrade

2. После этого мы можем установить единственный пакет, который мы будем использовать, выполните следующую команду, чтобы установить dnsmasq.

sudo apt-get install dnsmasq

3. Прежде чем мы забегаем слишком далеко вперед, мы должны настроить соединение wlan0, которое мы планируем использовать. Если вы уже настроили беспроводное соединение, вы можете перейти к шагу 5. В противном случае откройте wpa_supplicantфайл, выполнив следующую команду:

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

4. В этом файле добавьте следующее, убедившись, что вы заменили ssid именем сети, к которой хотите подключиться, и замените значение psk паролем для этой сети.

network={

        ssid="networkname"

        psk="networkpassword"

}

5.Теперь, когда беспроводная сеть настроена для правильного подключения, мы можем приступить к настройке нашего eth0интерфейса. Это в основном заставит его использовать статический IP-адрес, отсутствие его настройки может вызвать несколько проблем. Для этого нам нужно изменить dhcpcd.confфайл, выполнив следующую команду:

sudo nano /etc/dhcpcd.conf

 Важное примечание: если вы используете Raspbian stretch, возможно, потребуется изменить wlan0 и eth0, если включены предсказуемые сетевые имена. Используйте ifconfigкоманду, чтобы увидеть новые имена, они, скорее всего, довольно длинные и будут содержать MAC-адрес. Убедитесь, что вы обновили их для всех команд в этом руководстве.

6.В этот файл нам нужно добавить следующие строки, убедитесь, что вы заменили eth0правильный интерфейс вашего Ethernet.

interface eth0

static ip_address=192.168.220.1/24

static routers=192.168.220.0

Теперь мы можем сохранить и выйти из файла, нажав CTRL+, Xзатем нажав, Yа затем ENTER.

7. После внесения изменений в конфигурацию dhcpcd мы должны перезапустить службу, выполнив следующую команду:

sudo service dhcpcd restart

8. Прежде чем мы начнем изменять конфигурацию dnsmasq, мы сначала сделаем резервную копию исходной конфигурации, выполнив следующую команду.

sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.orig

9. Теперь, когда исходная конфигурация зарезервирована и убрана, мы можем перейти к созданию нового файла конфигурации, введя в терминал команду ниже.

sudo nano /etc/dnsmasq.conf

10. Теперь, когда у нас есть новый файл, мы хотим добавить следующие строки. Эти строки в основном сообщают пакету dnsmasq, как обрабатывать трафик DNS и DHCP.

interface=eth0       # Use interface eth0 

listen-address=192.168.220.1   # Specify the address to listen on 

bind-dynamic         # Bind to the interface

server=8.8.8.8       # Use Google DNS 

domain-needed        # Don't forward short names 

bogus-priv           # Drop the non-routed address spaces. 

dhcp-range=192.168.220.50,192.168.220.150,12h # IP range and lease time 

Теперь мы можем сохранить и выйти из файла, нажав CTRL+, Xзатем нажав, Yа затем ENTER.

11. Теперь нам нужно настроить брандмауэр Raspberry Pi так, чтобы он перенаправлял весь трафик с нашего соединения eth0 на наше соединение wlan0.

Прежде чем мы это сделаем, мы должны сначала включить ipv4p IP Forwarding через sysctl.confфайл конфигурации, поэтому давайте начнем его редактировать с помощью следующей команды:

sudo nano /etc/sysctl.conf

12. В этом файле вам нужно найти следующую строку и удалить # с ее начала.

Находить:

#net.ipv4.ip_forward=1

Заменить:

net.ipv4.ip_forward=1

Теперь мы можем сохранить и выйти из файла, нажав CTRL+, Xзатем нажав, Yа затем ENTER.

13. Теперь, поскольку мы не хотим ждать следующей перезагрузки перед загрузкой конфигурации, мы можем запустить следующую команду, чтобы немедленно включить ее.

sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"

14.Теперь, когда переадресация IPv4 включена, мы можем перенастроить наш брандмауэр так, чтобы трафик перенаправлялся с нашего eth0интерфейса на наше wlan0соединение. В основном это означает, что любой, кто подключается к локальной сети, сможет использовать наше интернет-соединение wlan0.

Выполните следующие команды, чтобы добавить наши новые правила в iptable:

sudo iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE 

sudo iptables -A FORWARD -i wlan0 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT 

sudo iptables -A FORWARD -i eth0 -o wlan0 -j ACCEPT 

Примечание: если вы получаете ошибки при вводе вышеуказанных строк, просто перезагрузите Pi, используя sudo reboot.

15. Конечно, iptables сбрасываются при каждой загрузке Raspberry Pi, поэтому нам нужно будет где-то сохранить наши новые правила, чтобы они загружались обратно при каждой загрузке. Чтобы сохранить наш новый набор правил, выполните следующую команду.

sudo sh -c "iptables-save > /etc/iptables.ipv4.nat"

16. Теперь, когда наши новые правила надежно сохранены где-то, нам нужно, чтобы этот файл загружался обратно при каждой перезагрузке. Самый простой способ справиться с этим - изменить rc.localфайл. Выполните следующую команду, чтобы начать редактирование файла.

sudo nano /etc/rc.local

17. Теперь мы в этом файле, нам нужно добавить строку ниже. Убедитесь, что эта линия появляется над « exit 0». Эта строка в основном считывает настройки из нашего iptables.ipv4.natфайла и загружает их в iptables.

Находим:

exit 0

Добавим:

iptables-restore < /etc/iptables.ipv4.nat

Теперь мы можем сохранить и выйти из файла, нажав CTRL+, Xзатем нажав, Yа затем ENTER.

18. Наконец, все, что нам нужно сделать, это запустить нашу службу dnsmasq. Для этого все, что вам нужно сделать, это выполнить следующую команду:

sudo service dnsmasq start

19. Теперь у вас, наконец, должен быть полностью рабочий мост Raspberry Pi WiFi Bridge, вы можете убедиться, что он работает, подключив любое устройство к его порту Ethernet, мост должен обеспечивать интернет-соединение с устройством, к которому вы его подключили. Чтобы убедиться, что все работает без сбоев, лучше попробовать перезагрузить компьютер прямо сейчас. Это гарантирует, что все будет успешно повторно включено при резервном запуске Raspberry Pi. Выполните следующую команду, чтобы перезагрузить Raspberry Pi:

sudo reboot

 Настройка WiFi-моста Raspberry Pi с помощью VPN

Однако есть одно небольшое изменение, которое вам нужно будет сделать на шаге 13 , вместо того, чтобы использовать команды, представленные там, выполните следующие команды. По сути, основное изменение, которое вы здесь увидите, заключается в том, что вместо перенаправления трафика с wlan0 через туннель мы будем перенаправлять трафик из нашего соединения eth0 в туннель.

sudo iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE

sudo iptables -A FORWARD -i tun0 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT

sudo iptables -A FORWARD -i eth0 -o tun0 -j ACCEPT

Остальную часть руководства по точке доступа VPN можно выполнить без каких-либо других изменений.

 




Необходимо добавить материалы...
Результат опроса Результаты Все опросы нашего сайта Архив опросов
Всего голосовало: 373



          

Радио для всех© 2024