wireguard с маркировкой маршрута по источнику, выбранным абонентам локальной сети
Добавлено: 09 ноя 2025, 15:02
Для микротика:
Тоже самое для линукс:
Создайте конфигурационный файл /etc/wireguard/wg-Ekaterinburg.conf (клиентский)
Запускаем WireGuard
Назначение IP-адреса интерфейсу WireGuard
Настройка NAT (маскарадинг)
Создайте таблицу маршрутизации (например, в файле /etc/iproute2/rt_tables добавьте):
Затем добавьте маршруты:
Добавьте правило для маркировки трафика:
Затем добавьте правило маршрутизации для маркированного трафика:
Код: Выделить всё
/interface wireguard add listen-port=51806 mtu=1420 name=wg-Ekaterinburg private-key="приватный ключ"
/interface wireguard peers add allowed-address=0.0.0.0/0 comment=wireguard endpoint-address=162.159.193.1 endpoint-port=2408 interface=wg-Ekaterinburg persistent-keepalive=25s public-key="публичный ключ"
/ip address add address=172.16.0.2/32 interface=wg-Ekaterinburg network=172.16.0.2
/ip firewall nat add action=masquerade chain=srcnat out-interface=wg-Ekaterinburg comment="162.159.193.1 Erfterinburg"
/routing table add disabled=no fib name=vpn-Ekaterinburg
/ip route add comment=vpn-Ekaterinburg disabled=no distance=1 dst-address=0.0.0.0/0 gateway=wg-Ekaterinburg pref-src="" routing-table=vpn-Ekaterinburg suppress-hw-offload=no
/ip firewall mangle add action=mark-routing chain=prerouting disabled=no src-address=192.168.99.99 dst-address-list=!allow-local-all protocol=tcp dst-port=443 new-routing-mark=vpn-Ekaterinburg passthrough=yes comment="Ekaterinburg"Создайте конфигурационный файл /etc/wireguard/wg-Ekaterinburg.conf (клиентский)
Код: Выделить всё
[Interface]
ListenPort = 51806
MTU = 1420
PrivateKey = приватный ключ
[Peer]
PublicKey = публичный ключ
AllowedIPs = 0.0.0.0/0
Endpoint = 162.159.193.1:2408
PersistentKeepalive = 25
Код: Выделить всё
sudo wg-quick up wg-EkaterinburgКод: Выделить всё
sudo ip address add 172.16.0.2/32 dev wg0Код: Выделить всё
sudo iptables -t nat -A POSTROUTING -o wg0 -j MASQUERADEКод: Выделить всё
100 vpn-EkaterinburgКод: Выделить всё
sudo ip route add default via <gateway> dev wg0 table vpn-Ekaterinburg
sudo ip rule add from 172.16.0.2/32 table vpn-EkaterinburgКод: Выделить всё
sudo iptables -t mangle -A PREROUTING -s 192.168.99.99 -p tcp --dport 443 -j MARK --set-mark 1000Код: Выделить всё
sudo ip rule add fwmark 1000 table vpn-Ekaterinburg