Kastovanje se kvari na tri mesta koja sa kauča izgledaju isto. Telefon možda nikad ne vidi prijemnik, prijemnik se može pojaviti i zatim odbiti sesiju, ili sesija može početi i zastati minut kasnije. Tunel na telefonu menja svaki od tih puteva drugačije, a za jedan od njih ne menja ništa. Prvo imenujte fazu koja ne uspeva, pa tek onda odlučite da li je promena politike uopšte prava poluga.

Imenujte fazu koja ne uspeva pre nego što promenite politiku

Gledajte šta telefon radi odmah nakon što dodirnete ikonu za kastovanje. Prazna lista je rezultat otkrivanja, dodir koji prijavi grešku je rezultat kontrole, a sesija koja počne pa se zaglavi je rezultat reprodukcije. Ta tri imaju različite vlasnike, i obično samo prva dva uključuju podešavanja tunela na telefonu.

StageWhat the phone showsEvidence that separates it
DiscoveryNo receiver in the listAnother device on the same segment sees the receiver
ControlReceiver listed, session refusedPort answer versus permission prompt
PlaybackSession starts, then stallsThe receiver's own link, not the phone's

Zapišite fazu pre nego što bilo šta promenite. Ispravka primenjena na pogrešnoj fazi čini sledeći test nečitljivim, a većina priča o kastovanju dolazi upravo iz te zbrke.

Otkrivanje je lokalni saobraćaj, a tunel ga skriva

Prijemnici se oglašavaju lokalnim najavama, a telefon ih pronalazi upitima na istoj vezi, pa sve što ukloni telefon sa te veze uklanja prijemnik sa liste. Tunel koji skreće sav saobraćaj van LAN-a može sakriti te razmene, a dozvola za lokalnu mrežu na nivou aplikacije može ih blokirati čak i kada ruta postoji. Gostujući Wi-Fi sa izolacijom klijenata daje istu praznu listu bez ikakvog VPN-a. Dokažite da dva uređaja dele segment pre nego što okrivite tunel.

avahi-browse -at | grep -i -E 'chromecast|googlecast'
dig +short @224.0.0.251 -p 5353 _googlecast._tcp.local PTR

Prva komanda navodi šta se oglašava na segmentu pomoćne mašine, a druga direktno pita multicast DNS grupu. Prijemnik koji nedostaje u obema neće se pojaviti ni u aplikaciji na telefonu, kakvo god bilo stanje tunela. Ako je prijemnik vidljiv sa uređaja sa isključenim tunelom, a nevidljiv sa uređaja sa uključenim, našli ste i fazu i uzrok zajedno.

Izuzeće za LAN drži tunel uključenim

Mnogi klijenti nude izuzeće za lokalnu mrežu koje ostavlja tunel aktivnim uz dozvolu lokalnih adresa. Koristite to dokumentovano podešavanje umesto da isključite kill switch ili ceo firewall, jer oni menjaju mnogo više nego što kastovanju treba. Ako mreža namerno razdvaja pametne uređaje, tražite od vlasnika konkretan saobraćaj otkrivanja, kontrole i povratka umesto ravnog pristupa.

nc -vz 192.168.1.50 8009

Kontrolni test prema prijemniku razdvaja dozvolu od dostupnosti: port koji odgovara znači da put postoji, a odbijanje znači da je telefonu bilo dozvoljeno da otkrije uređaj i dalje ne može da razgovara s njim. Portovi 8008 i 8009 su uobičajeni portovi za kastovanje, a aplikacija može koristiti druge, pa jedan odbijen port tretirajte kao nagoveštaj, a ne presudu. Izuzeće i dozvola aplikacije ostaju nezavisni, jer lokalni pristup ne stvara rutu, a dodavanje rute ne daje dozvolu. Kill switch takođe može da odbaci lokalni saobraćaj posle ponovnog povezivanja, zbog čega otkrivanje mora ponovo da se testira kada se tunel vrati.

Reprodukcija možda ne koristi vezu telefona

U sesiji koju vodi aplikacija telefon predaje prijemniku adresu medija, a prijemnik je preuzima preko svoje veze, pa promena javne adrese telefona ništa ne čini za strim. Naslov ograničen nalogom ipak može da ne uspe iz svojih razloga, a Google zahtevi za kastovanje pokrivaju kompatibilnost aplikacije i uređaja, a ne mrežni put. Usmeravanje samog televizora kroz tunel je zasebna konfiguracija sa sopstvenim pitanjima politike.

Dva znaka razlikuju režime. Kastovanje koje preživi zaključavanje ekrana telefona vodi aplikacija, jer prijemnik sam preuzima; preslikavanje koje stane kada se zaključa ekran pošiljaoca je neprekidan strim sa telefona. Kada otkrivanje i kontrola uspeju ali reprodukcija zastane, gledajte umesto toga u Wi-Fi vezu prijemnika i njegov internet put, jer test brzine na telefonu opisuje telefon, a ne televizor.

Poništite izuzeće i testirajte ponovo

Svaka privremena promena traži put nazad, a redosled je važan. Uklonite izuzeće za LAN, ponovo povežite tunel da klijent ponovo primeni svoju politiku, zatim ponovite korak otkrivanja i zabeležite da li prijemnik ponovo nestaje. Taj redosled vam kaže da li je izuzeće radilo posao ili se između toga promenilo nešto drugo.

# after removing the LAN exception, reconnect and confirm the tunnel is up
resolvectl status | grep -E 'DNS Servers|Default Route|Protocols'
avahi-browse -at | grep -i -E 'chromecast|googlecast'

Posle toga proverite tri faze odvojeno, jer uspeh na jednoj ne govori ništa o ostalima. Zatim proverite da li nepovezane aplikacije na telefonu i dalje prate predviđenu rutu, jer lokalno izuzeće koje je tiho postalo potpuno zaobilaženje je gori ishod od kastovanja kome treba jedan dodatni dodir.

Povezani članci