Помогите настроить правильно маршрутизацию некоторых сайтов на другой интерфейс, с помощью ipset и dnsmasq. Уже просмотрел все что нашел мануалы, но все равно что то не так работает, точнее нужные домены не идут через выбранный интерфейс.
cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 127.0.0.1
nameserver 192.168.0.1
ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 02:42:c6:27:b3:b1 brd ff:ff:ff:ff:ff:ff
inet 192.168.2.6/24 brd 192.168.2.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 fd45:e02f:827e:0:42:c6ff:fe27:b3b1/64 scope global mngtmpaddr dynamic
valid_lft forever preferred_lft forever
inet6 fe80::42:c6ff:fe27:b3b1/64 scope link
valid_lft forever preferred_lft forever
3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 12:42:c6:27:b3:b1 brd ff:ff:ff:ff:ff:ff
inet 192.168.0.105/24 brd 192.168.0.255 scope global dynamic wlan0
valid_lft 6951sec preferred_lft 6951sec
inet6 fe80::5617:c487:bc95:a666/64 scope link
valid_lft forever preferred_lft forever
4: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN group default qlen 100
link/none
inet 10.114.114.2/24 brd 10.114.114.255 scope global tun0
valid_lft forever preferred_lft forever
inet6 fe80::51f9:2967:8ef2:bac7/64 scope link flags 800
valid_lft forever preferred_lft forever
ip r
default via 192.168.0.1 dev wlan0 proto static metric 600
192.168.0.0/24 dev wlan0 proto kernel scope link src 192.168.0.105 metric 600
192.168.2.0/24 dev eth0 proto kernel scope link src 192.168.2.6
10.114.114.0/24 dev tun0 proto kernel scope link src 10.114.114.2
cat /etc/dnsmasq.conf
listen-address=127.0.0.1
server=/eth0.me/vk.com/127.0.0.1
ipset=/eth0.me/vk.com/vpnlist
host -a eth0.me
Trying "eth0.me"
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 7688
;; flags: qr rd ra; QUERY: 1, ANSWER: 5, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;eth0.me. IN ANY
;; ANSWER SECTION:
eth0.me. 83491 IN SOA ns1.internex.at. do-not-reply.eth0.me. 2019021705 43200 7200 1209600 86400
eth0.me. 83491 IN NS ns3.internex.at.
eth0.me. 83491 IN NS ns4.internex.at.
eth0.me. 83491 IN NS ns1.internex.at.
eth0.me. 83491 IN NS ns2.internex.at.
Received 157 bytes from 127.0.0.1#53 in 19 ms
Создание таблицы и маршрутизации:
ipset create vpnlist hash:ip timeout 3600
ip rule add fwmark 1 table 1
ip route add default dev tun0 table 1
iptables -w -A PREROUTING -t mangle -m set --match-set vpnlist dst,src -j MARK --set-mark 1
пробовал менять на
iptables -w -A OUTPUT -t mangle -m set --match-set vpnlist dst -j MARK --set-mark 1
Выполняю wget -qO- eth0.me в ответ вывод ip провайдера, а не vpn.
все крутиться на на одном хосте (не роутер, ОС Debian). При использовании traceroute -i wlan0 eth0.me и traceroute -i tun0 eth0.me есть ответ без проблем.