1

Temat: Osobny DNS dla adresu MAC.

Witam

Rozpocząłem właśnie przygodę z OpenWRT startując praktycznie od zera (kilka razy instalowałem i bawiłem się w Ubuntu i Mint, ale to chyba za mało :-) ).

Udało mi się już:
a) zdefiniować własne DNS (w pliku etc/config/network)
b) dodać wyjątek dla kilku stron filtrowanych przez  OpenDNS (w pliku etc/config/dhcp)

Ale poległem na kolejnych zadaniach:

c) osobny DNS dla wskazanego adresu MAC (ewentualnie IP, mogę go zrobić statycznym)
d) blokada wskazanych stron dla wskazanego adresu MAC (ewentualnie IP, mogę go zrobić statycznym).

Szukam najprostszego rozwiązania bez instalowania dodatkowych pakietów z adblokami.

Czy ktoś wspomoże?

Pozdrawiam

Mariusz

2

Odp: Osobny DNS dla adresu MAC.

c) https://eko.one.pl/?p=openwrt-konfigura … lientwdhcp oraz dla konkretnego: https://openwrt.org/docs/guide-user/bas … al_options
d) generalnie adblock: https://eko.one.pl/?p=openwrt-adblock stawiasz, a w dhcp lub w przekierowaniu wymuszać używania ich przez dany adres mac. Blokowanie robisz na samym dnsmasq: https://eko.one.pl/?p=openwrt-dns

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

3

Odp: Osobny DNS dla adresu MAC.

Dziękuję, idę "powalczyć".

Na tych stronach już byłem, ale może teraz załapię we wskazanym miejscu.

4

Odp: Osobny DNS dla adresu MAC.

Cezary napisał/a:

d) generalnie adblock: https://eko.one.pl/?p=openwrt-adblock stawiasz, a w dhcp lub w przekierowaniu wymuszać używania ich przez dany adres mac. Blokowanie robisz na samym dnsmasq: https://eko.one.pl/?p=openwrt-dns

Temat c) ogarnięty preroutingiem w tablicy nat. Dziękuję.

A mógłbyś podpowiedzieć jakiś krok dalej w ustawieniu adblocka tylko dla wskazanych hostów?

5

Odp: Osobny DNS dla adresu MAC.

1. albo stawiasz dnsmasq z adblockiem na jakimś hoście i dhcp przekazujesz wybranym hostem ten adres dnsmasq: https://eko.one.pl/?p=openwrt-konfigura … lientwdhcp czyli to co miałeś w punkcie C
2. albo stawiasz dnsmasq z adblockiem na routerze, a komputerom które nie mają z niego korzystać przypisujesz inny dns
3. albo jak punkt 1 tyle że robisz w iptables przekierowanie portu 53/udp dla określonych adresów ip lub mac.

I pewnie kilka innych sposób o których teraz nie pomyślałem. Jak w końcu zrobiłeś to sobie?

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

6

Odp: Osobny DNS dla adresu MAC.

Faktycznie rozwiązanie miałem gotowe pod ręką :-) a nie skojarzyłem wcześniej, że to przekierowanie portu 53 dla danego hosta omija adblock. Więc:

1. Router z adblockiem.
2. Hosty, które mają omijać adblocka, dopisane w tablicy nat i preroutingiem kierowane dla zapytań portu 53 do 8.8.8.8

Dziękuję!

7

Odp: Osobny DNS dla adresu MAC.

A dał się zrobić wyłączenie "Wymuszaj używanie routera jako serwera DNS" dla wybranego hosta?
Ma dostawać standardowy DNS z DHCP ale ręcznie ustawiony adres DNS nie powinien być przekierowany przez router.

8

Odp: Osobny DNS dla adresu MAC.

To tez jest przekierowanie, wszystkiego co idzie na port 53 na router:53. Więc sam możesz zrobić dowolne przekierowanie czegokolwiek  (z wykluczeniem) jakie chcesz.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

9

Odp: Osobny DNS dla adresu MAC.

Faktycznie Gargoyle wrzuca to w /etc/firewall.user
iptables -t nat -I PREROUTING -p tcp --dport 53 -j REDIRECT --to-ports 53
iptables -t nat -I PREROUTING -p udp --dport 53 -j REDIRECT --to-ports 53

Jaki jest przełącznik wykluczenia hosta?

10 (edytowany przez Cezary 2021-04-14 18:53:19)

Odp: Osobny DNS dla adresu MAC.

-m mac ! --mac-source 00:01:02:03:04:05

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

11

Odp: Osobny DNS dla adresu MAC.

A jest gdzieś dobry, pełny opis składni iptables?

12

Odp: Osobny DNS dla adresu MAC.

ooo, to było paskudne. Sprawdzałeś w googlach? Są tysiące stron o iptables, łącznie w manualami i wyjaśnieniami. Teraz to zadałeś pytanie...

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

13

Odp: Osobny DNS dla adresu MAC.

Właśnie sprawdzałem. I zawsze informacja fragmentaryczna w konkretnym kontekście.
Szczegóły zawsze można sobie doszukać, chodzi o dostępne przełączniki itp.
Nie zamierzam się doktoryzować, potrzebny dobry punkt wyjścia.

14

Odp: Osobny DNS dla adresu MAC.

iptables -m mac --help

https://linux.die.net/man/8/iptables

(poprawiłem poprzedni post, bo nie tam gdzie trzeba był wykrzyknik)

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

15

Odp: Osobny DNS dla adresu MAC.

Grzesinski napisał/a:

A jest gdzieś dobry, pełny opis składni iptables?

Wbrew tytułowi jest po równo iptables i nftables.

https://helion.pl/ksiazki/zapory-siecio … m#format/e

16

Odp: Osobny DNS dla adresu MAC.

Dziękuję smile

17

Odp: Osobny DNS dla adresu MAC.

Tak to powinno wyglądać?
iptables -t nat -I PREROUTING -p tcp --dport 53 -j REDIRECT --to-ports 53 -m mac ! --mac-source xx:xx:xx:xx:xx:xx
Bo niestety wykluczenie nie zaskoczyło (po restarcie firewalla i flush DNS na PC).
Nadal korzysta z DNS routera a nie ręcznego wpisu.

18 (edytowany przez sky7 2021-04-16 22:23:24)

Odp: Osobny DNS dla adresu MAC.

Imho masz tcp zamiast udp. Ale lepiej poczekać na Cezarego

19

Odp: Osobny DNS dla adresu MAC.

Tak wiem, są obie są zmienione w /etc/firewall.user  - osobno tcp i udp (wpisy jak podałem kilka postów wyżej).
Chodzi o prawidłowość składni, bo coś mi to wykluczenie nie działa.

20

Odp: Osobny DNS dla adresu MAC.

iptables -L -n -t nat

Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination         
REDIRECT   udp  --  0.0.0.0/0            0.0.0.0/0            udp dpt:53 MAC ! xx:xx:xx:xx:xx:xx redir ports 53
REDIRECT   tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:53 MAC ! xx:xx:xx:xx:xx:xx redir ports 53
REDIRECT   udp  --  0.0.0.0/0            0.0.0.0/0            udp dpt:53 MAC ! xx:xx:xx:xx:xx:xx redir ports 53
REDIRECT   tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:53 MAC ! xx:xx:xx:xx:xx:xx redir ports 53
.....
Chain zone_lan_prerouting (1 references)
target     prot opt source               destination         
REDIRECT   udp  --  0.0.0.0/0            0.0.0.0/0            udp dpt:53
REDIRECT   tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:53
prerouting_lan_rule  all  --  0.0.0.0/0            0.0.0.0/0            /* !fw3: Custom lan prerouting rule chain */

21

Odp: Osobny DNS dla adresu MAC.

iptables -t nat -I PREROUTING -s 192.168.1.0/24 -p udp --dport 53 -m mac ! --mac-source xx:xx:xx:xx:xx:xx  -j DNAT --to 192.168.1.1

Z małą uwagą - androidy mogą korzystać z czegoś innego ("bezpieczny dns"), więc może to być nie tylko port 53 ale także coś innego - łącznie z tym że mogą gadać po 443 szyfrowanym tunelem, i wtedy nie masz jak tego przekierować.

PS. Używaj  -v bo wtedy widzisz liczniki i czy się pakiety na regułę łapią.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

22

Odp: Osobny DNS dla adresu MAC.

Coś zaczęło działać.
W iptables -v -L -n -t nat powinny być 4 wpisy? Wygląda jak duplikowanie tego samego. Pakiety zlicza tylko na pierwszym.

Pozostaje walka z cachowaniem wpisów na PC.

23

Odp: Osobny DNS dla adresu MAC.

@Grzesinski  może AdGuard https://eko.one.pl/forum/viewtopic.php?id=19622  spełni twoje oczekiwania , co do  filtrowania to  sprawa nie jest prosta juz to Cezary napisał  ,  ponieważ  teraz  prawie każda przegladrka ma mechanizmy  szyfrowania   DoH, które idzie po 443  . Generalnie  zawsze  znajdzie sie  sposób na ominiecie , vpn , tor

24

Odp: Osobny DNS dla adresu MAC.

Grzesinski napisał/a:

Coś zaczęło działać.
W iptables -v -L -n -t nat powinny być 4 wpisy? Wygląda jak duplikowanie tego samego. Pakiety zlicza tylko na pierwszym.

Jak dodawałeś kilka razy to tak. Usuwasz tym samym poleceniem, tylko -D zamiast -I.
Albo po prostu reboot.

25

Odp: Osobny DNS dla adresu MAC.

Adguard wygląda ciekawie, ale to na przyszłość.  Muszę się mu przyjrzeć.

sky:
Te reguły wskakują wyłącznie z /etc/firewall.user

W preroutingu nie mam żadnej tego typu, dokładam do ww. pliku dwie reguły:
iptables -t nat -I PREROUTING -s 192.168.2.0/24 -p tcp --dport 53 -m mac ! --mac-source xx  -j DNAT --to 192.168.2.1
iptables -t nat -I PREROUTING -s 192.168.2.0/24 -p udp --dport 53 -m mac ! --mac-source xx -j DNAT --to 192.168.2.1

i w preroutingu pojawiają się:

num   pkts bytes target     prot opt in     out     source               destination         
1        0     0 DNAT       udp  --  *      *       192.168.2.0/24       0.0.0.0/0            udp dpt:53 MAC ! xx  to:192.168.2.1
2        0     0 DNAT       tcp  --  *      *       192.168.2.0/24       0.0.0.0/0            tcp dpt:53 MAC ! xx 0 to:192.168.2.1
3        0     0 DNAT       udp  --  *      *       192.168.2.0/24       0.0.0.0/0            udp dpt:53 MAC ! xx to:192.168.2.1
4        0     0 DNAT       tcp  --  *      *       192.168.2.0/24       0.0.0.0/0            tcp dpt:53 MAC ! xx to:192.168.2.1