Wireguard + WARP настройка в ubuntu 20.06

Устанавливаем Wireguard:

# apt install wireguard resolvconf

Для просмотра маршрутов понадобится команда route, traceroute, если недоступны, ставим net-tools, traceroute

# apt install net-tools traceroute

Ниже штатный конфиг WARP для Windows, с ним возникают проблемы  в Ubuntu и ничего не работает, Endpoint не пингуется после включения VPN

[Interface]
PrivateKey = WHRsILpDJhPECVF4V8QBB4kjQXYsth8SI6wOrWh1v3k=
Address = 172.16.0.2/32
DNS = 1.1.1.1

[Peer]
PublicKey = bmXOC+F1FxEMF9dyiK2H5/1SUtzH0JuVo51h2wPfgyo=
AllowedIPs = 0.0.0.0/1, 128.0.0.0/1
Endpoint = 162.159.193.5:2408

Добавляем в него команды добавления и удаления маршрутизации для подсети 162.159.193.0/24, где 192.168.1.1 - шлюз локальной сети

PostUp = ip route add 162.159.193.0/24 via 192.168.1.1
PostDown = ip route del 162.159.193.0/24

Итоговый вид конфига:

[Interface]
PrivateKey = WHRsILpDJhPECVF4V8QBB4kjQXYsth8SI6wOrWh1v3k=
Address = 172.16.0.2/32
DNS = 1.1.1.1

PostUp = ip route add 162.159.193.0/24 via 192.168.1.1
PostDown = ip route del 162.159.193.0/24

[Peer]
PublicKey = bmXOC+F1FxEMF9dyiK2H5/1SUtzH0JuVo51h2wPfgyo=
AllowedIPs = 0.0.0.0/1, 128.0.0.0/1
Endpoint = 162.159.193.5:2408

Сохраняем его в файл

/etc/wireguard/wg0.conf

Включение VPN командой:

# wg-quick up wg0

Выключение:

# wg-quick down wg0

 

Для отладки настройки могут помочь следующие команды:

# # вывод в режиме реального времени информации о сетевых интерфейсах
# watch 'ifconfig'

# # вывод в режиме реального времени информации о работе Wireguard
# watch -n 1 'wg show'

# # вывод маршрутов
# route

# # проверяем, сменился ли наш внешний IP адрес
# wget -qO- ip.gs

Для более детального понимания что происходит в Wireguard, после запуска Wireguard выполняем 2 команды:

# # включение логов Wireguard
# echo "module wireguard +p" | tee /sys/kernel/debug/dynamic_debug/control

# # просмотр логов в режиме реального времени
# dmesg -wT

При написании статьи были использованы материалы
https://losst.pro/marshrutizatsiya-v-linux
https://ubuntu.com/server/docs/wireguard-vpn-troubleshooting
https://shootnick.ru/ip_calc/