Server u bridge režimu radi, masquerade pravilo postoji, a pregledač na klijentu se i dalje vrti. Sve izgleda kao da bi trebalo da radi, zato prvi sat odlazi na provjeru tunela i akreditiva. Zatim pročitate brojač na NAT pravilu i nađete nulu koja se nije pomjerila. Pravilo koje nikada nije izbrojalo nijedan paket nikada se nije ni poklopilo s njim, a na serveru u bridge režimu razlog je strukturalan: klijentski saobraćaj izlazi kroz virtuelni tap uređaj, dok pravilo imenuje fizičku karticu koju ste prepisali iz starijeg vodiča.

Dokaz je brojač, a ne unos u tabeli

Pravila koja postoje i pravila koja se poklapaju su različite stvari, a brojač je ono što ih razdvaja. Izlistajte NAT tabelu sa detaljnim brojačima i pročitajte brojeve pored svakog pravila prije nego što bilo šta promijenite. Brojač koji stoji na nuli dok saobraćaj teče znači da je pravilo preskočeno, koliko god njegove adrese izgledale razumno. Brojač koji raste dok veza i dalje ne uspijeva upućuje vas negdje drugdje: na prosljeđivanje, povratni put ili udaljeni kraj.

iptables -t nat -L POSTROUTING -v -n

Najprije pročitajte brojač pored poklapanja interfejsa. Ako je raspon izvora tačan, a izlazna strana pogrešna, ispravka je jedna riječ u pravilu, a ne potpuno novo pravilo.

Pronađite ime koje kernel zaista zapisuje

Odredite ime tunelskog uređaja prije nego što napišete pravilo, koristeći listu interfejsa, a ne pamćenje. U bridge postavci OpenVPN uređaj je obično tap interfejs koji je kreirao server, a njegovo ime je dio vaše lokalne konfiguracije, ne univerzalna konstanta. Potvrdite da postoji dok je tunel aktivan, jer uređaj koji se pojavi tek nakon što se klijent poveže učiniće da raniji test izgleda kao problem s pravilom.

ip -brief link

Zapišite ime. Svaka kasnija komanda u ovoj dijagnozi se na njega odnosi, a greška u kucanju ovdje daje tačno isti nulti brojač kao i prvobitna greška.

Prepišite pravilo za tunelski uređaj

Usmjerite pravilo na tunelski uređaj i zadržite raspon klijenata kao uslov poklapanja, tako da pokriva tunelski saobraćaj i ostavlja vlastite veze hosta na miru. Zamijenite svojim rasponom i imenom uređaja, jer su oba ispod primjeri i nijedno nije prenosivo između instalacija.

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o tap0 -j MASQUERADE

Zatim provjerite druga dva uslova koja isti simptom skriva. Provjerite da li je prosljeđivanje uključeno, i ako nije, uključite ga u konfiguraciji same distribucije, a ne pomoću echo koji nestaje nakon ponovnog pokretanja. Pročitajte i brojače forward lanca i, ako on odbacuje tunelski saobraćaj, dozvolite taj interfejs posebno i ostavite politiku lanca netaknutom.

Čitanje forward lanca s brojačima traje jednu komandu i isključuje polovinu preostalih mogućnosti prije nego što dotaknete drugo pravilo.

Zašto se fizička kartica nikada ne poklapa

Bridge je softverski prekidač sastavljen od tap uređaja i jednog fizičkog interfejsa. Klijentski okvir ulazi u taj prekidač i izlazi prema fizičkoj mreži kao član bridge-a, a ne kao paket na kartici. Kernel zato pripisuje paket bridge-u i njegovom portu, i zato se kartica o kojoj ste razmišljali nikada ne pojavljuje u poklapanju. Na fizičkom interfejsu ništa nije pokvareno; on jednostavno nije uređaj kojem kernel pripisuje taj paket.

Sljedeći problem s kojim se ljudi susreću dolazi iz iste strukture: filtriranje okvira na bridge-u je odvojeno sredstvo od IP filtriranja. Ako je potrebno ograničenje na nivou okvira, ono pripada filtriranju bridge-a, a ne pravilu IP tabele.

Dokažite to od početka do kraja, pa ga zatim trajno sačuvajte

Podignite jedan klijent i pingajte nešto na LAN-u servera; taj put vježba prosljeđivanje bez ikakvog prevođenja. Nakon toga zatražite nešto javno da bi masquerade pravilo moralo biti iskorišteno, i pročitajte brojač još jednom: treba da se pomjeri za ovaj test, a ne za prethodni. Snimak napravljen na tunelskom uređaju pokazuje i gdje se okvir pojavljuje i koju adresu nosi.

Posljednji korak: stavite pravila koja rade u konfiguraciju koju čita ponovno pokretanje i zabilježite ime uređaja koje bridge ovog hosta zaista koristi. Sve što je otkucano rukom nestaje nakon ponovnog pokretanja, a ista neispravnost se vraća bez ičega što bi je objasnilo.

Ako se brojač i poslije prepisivanja ne pomjera, uporedite raspon izvora u pravilu s adresom koju je klijent zaista dobio, jer server u bridge režimu može davati adrese iz raspona koji niste namjeravali.

Povezani članci