Введение
В данной заметке разберем, как настроить на роутере OpenWRT WireGuard клиент.
В данном примере я буду использовать роутер Mi Router 4C с прошивкой OpenWRT 23.05.4 и установленной Luci, который будет подключен к основному роутеру от провайдера LAN в LAN, на нем я отключил DHCP и поменял его IP на 192.168.1.222, я хочу, чтобы весь трафик шел через WireGuard тоннель на этом роутере..
Данная инструкция подразумевает, что у вас базово настроен роутер, имеется интернет и конфиг клиента WireGuard.
Также вы можете обратиться ко мне за уже готовым роутером с OpenWRT и по вопросам настройки VPN.
Настройка WireGuard клиента на OpenWRT роутере
1. Переходим в System-Software и обновляем список пакетов из репозитория, нажав на кнопку Update lists:
2. В поле Filter пишем Wireguard и ставим пакеты ниже:
wireguard-tools
luci-proto-wireguard
3. Переходим в Network – Interfaces и нажимаем на Add new interface со следующим содержимым жмем Create interface:
- Name – wg0
- Protocol – WireGuard VPN
4. Далее нам понадобится рабочий конфиг для WireGuard клиента, жмем в поле Import configuration на кнопку Load configuration и вставляем содержимое конфигурации клиента (открываем его с помощью блокнота и копируем содержимое) и нажимаем Import settings:
5. Переходим в секцию Peers и нажимаем на Edit у нашего конфига в Imported peer configuration, тут нас интересует чекбокс Route Allowed IPs, при установке которого весь трафик будет заворачиваться через туннель WireGuard. (так как в Allowed IPs выставлено 0.0.0.0/0) и жмем Save – Save – Save & Apply
6. Переходим в Network – Firewall листаем в низ до Zones и жмем Add, заполняем и сохраняем:
- Name – wg0
- Input – teject
- Output – accept
- Forward – reject
- Masquerading – ставим чекбокс
- MSS clamping – ставим чекбокс
- Covered networks – wg0
- Allow forward from source zones – lan
Жмем Save – Save & Apply и перезагружаем наш роутер System – Reboot – Perform reboot
7. Заходим в Network – Diagnostics и жмакаем IPv4 Traceroute что бы проверить что трафик у нас выходит через тоннель WireGuard:
Готово, теперь локальная сеть и Wi-Fi идут через тоннель WireGuard, достаточно поменять шлюз у клиентов локальной сети вместо основного 192.168.1.1 на 192.168.1.222.
Заключение
В данной заметке разобрали как настроить WireGuard клиент на роутере OpenWRT.
Что бы не потерять инструкцию рекомендую подписаться на мой личный блог-канал в Telegram в котором я делюсь в формате заметок своими знаниями и интересным из мира IT, спасибо за потраченное время на чтение и доброго времени суток!)
Так же вы можете отблагодарить автора материально:
Спасибо за статью.
Хотелось бы увидеть развитие этой статьи в котором будет показано, как настроить wireguard на openwrt так, что бы только часть доменов(допустим только заблокированные) попадали на wireguard, а остальной трафик шел бы на lan/wan.
Ну самое простое тут https://lsetc.ru/wp-content/uploads/2024/08/openwrt-nastrojka-wireguard-klienta10-1024×908.webp указать вместо 0.0.0.0/0 адреса которые нужны)
Или воспользоваться статьей и скриптом от itdog – itdog https://itdog.info/tochechnaya-marshrutizaciya-po-domenam-na-routere-s-openwrt/
Огромное спасибо за статью, всё завелось с первого раза, только в конце не очень понял, для чего “поменять шлюз у клиентов локальной сети вместо основного 192.168.1.1 на 192.168.1.222”?
Рад что пригодилось)
В начале я написал, роутер на котором производилась настройка стоял у меня вторым роутером, у провайдерского роутера у меня 192.168.1.1, у того что с Openwrt 192.168.1.222
Провайдер начал блокировать протокол WG, отправка пакетов идет, получение нет(
Несколько дней всего успел порадоваться.. Есть ли способы обойти блок на openWRT?
Смотря какой роутер, а так да, можно воспользоваться vless, shadowsocks, можно попробовать amnezia wg
Для OpenWrt есть клиент от AmneziaWG, в .т.ч. с модулем ядра.
Здравствуйте, как можно написать вам в тг?