Co dokładnie jest wymagane, aby Airplay działał w sieciach VLAN? [Zamknięte]


17

Wydaje się, że AirPlay działa od razu po wyjęciu z pudełka, niejasno, tylko w sieci LAN. Nie jest dla mnie jasne, dlaczego, ale wygląda na to, że przynajmniej odkrycie opiera się na transmisjach. Wikipedia stwierdza, że Airplay jest zastrzeżonym protokołem, który prawdopodobnie wyjaśnia, dlaczego jedyna dokumentacja, którą znalazłem, jest nieoficjalna, taka jak ta specyfikacja w github .

Tak więc moje pytania to:

  1. Czy można skonfigurować sieć tak, aby Airplay działał w sieciach VLAN?
  2. Jeśli tak, to co dokładnie musi być dozwolone między sieciami VLAN, aby to zadziałało?
  3. Czy to zły pomysł w środowisku produkcyjnym, biorąc pod uwagę niedostępność oficjalnej dokumentacji protokołu?

1
Aplikacja jest biurem, w którym znajdują się zaufane urządzenia w „zaufanej” sieci i inne urządzenia w sieciach bezprzewodowych „odwiedzających”. Urządzenia z obu sieci powinny mieć możliwość nadawania na Airplay do sali konferencyjnej TV.
alx9r

Czy możesz dodać więcej szczegółów na temat swojego środowiska? Na przykład, jakiej marki sprzętu bezprzewodowego używasz? To znacznie wpłynie na twoją zdolność do robienia tego.
Brett Lykins,

1
Dlaczego nie utworzyć SSID / VLAN dla jednej sali konferencyjnej za pomocą Apple TV dla tej sali konferencyjnej na tym vlan? Lub umieść je bezpośrednio na identyfikatorze SSID gościa i niech pracownicy łączą się z nim podczas prezentacji. Wtedy każdy w pokoju, który go używa, może wskoczyć do tej sieci w celu prezentacji. Pracownicy wewnętrzni mogą stamtąd uzyskać dostęp do wewnętrznej sieci VPN w celu uzyskania dostępu do zasobów wewnętrznych (w zależności od konfiguracji).
some_guy_long_gone

@legioxi To w tej chwili wiodący plan: wszystkie urządzenia bonjour pracują w sieciach gości, a zaufani użytkownicy RA-VPN w zaufanej sieci stamtąd, jeśli / w razie potrzeby. Nadal istnieje problem udostępniania drukarek w obu sieciach, ale jak dotąd wydaje się, że jest to najgorsza strategia.
alx9r

1
Nazywa się to „Service Discovery Gateway” w produktach Cisco - cisco.com/c/en/us/td/docs/ios-xml/ios/ipaddr_dns/configuration/…
cpt_fink

Odpowiedzi:


7

Termin „Airplay” obejmuje dwie różne rzeczy.

Pierwszy dotyczy odkrywania usług i sposób, w jaki urządzenia zdolne do odbierania strumieni Airplay ogłaszają w sieci „Hej! Mogę odbierać Airplay!”. Odbywa się to normalnie za pośrednictwem usługi o nazwie Bonjour (przynajmniej Apple tak to nazywa) lub DNS-SD . Używa multiemisji i właśnie o to chodzi, jeśli ktoś mówi ci, że „Airplay jest tylko dla lokalnej sieci LAN” lub coś w tym rodzaju. Sama transmisja strumieniowa jest „normalną” emisją pojedynczą UDP.

Teraz głównym problemem jest sposób, w jaki dostajesz informacje o odbiorniku Airplay do potencjalnych nadawców w innej sieci. Istnieją dwie teoretyczne opcje:

  1. Możesz przesyłać dalej multiemisję. Może to być trudne, ale są do tego routery / zapory ogniowe. RTFM jak dokładnie, ale pomysł polega na tym, że musisz przekierować ruch multiemisji z adresem docelowym 224.0.0.251 do innej sieci i musisz to zrobić bez zmniejszania TTL.

  2. Inną opcją jest użycie emisji pojedynczej DNS-SD. Możesz użyć normalnego DNS, aby ogłosić te same informacje, które są normalnie dystrybuowane automatycznie za pośrednictwem multiemisji DNS-SD, i możesz skorzystać z małej pomocy narzędzia dns-sd (1) na MacOSX, aby uzyskać informacje, co dokładnie zapisać w pliku strefy DNS . Wykonaj to polecenie w sieci LAN za pomocą odbiornika Airplay, a to powinno dać ci wszystkie potrzebne informacje:

    $ dns-sd -Z _airplay._tcp
    Browsing for _airplay._tcp
    ...
    
  3. Istnieją również serwery proxy DNS-SD (na przykład avahi może być używane jako takie).

Teraz powiedziałem „teoretycznie”, ponieważ nie testowałem tego i cokolwiek robisz z protokołami, przekazywaniem itd., MOGĄ istnieć pewne przeszkody, na które nie masz wpływu - w końcu to Apple. Możesz poprawnie przekazać wszystkie informacje potencjalnemu nadawcy, ale iOS / MacOSX nadal może je odrzucić, ponieważ z jakiegoś powodu po prostu się nie podoba.

Jest jeszcze jedna (znowu teoretyczna;) opcja brutalnej siły - utwórz wpis DNS-SD dla adresu routera jako odbiornika Airplay dla sieci z nadawcami Airplay i przekaż (NAT) strumień UDP do prawdziwego odbiornika Airplay. Ale nawet przy tym istnieje kilka możliwości (dla inżynierów Apple), aby go złamać.

Kontynuuj, przetestuj i daj nam znać o swoich wynikach.


Ugh. Więc na podstawie twojej oceny sprowadzenie tego działania w zasadzie sprowadza się do eksperymentu.
alx9r

1
Jesteś na nieudokumentowanym terenie, więc zawsze chodzi o eksperymenty. Apple nie obsługuje tego, więc może również zepsuć się w dowolnym momencie (przy każdej aktualizacji itp.). Ale dowiedz się o rzeczach, które zrobisz, zrozum to, a będziesz w stanie zabezpieczyć je bezpiecznie i będziesz w stanie sprawić, by znów działało, jeśli się zepsuje. A przynajmniej zrozum, dlaczego dokładnie nie możesz sprawić, by działało;).
Thom

Do ostatniego punktu w twoim przedostatnim akapicie: ten post wydaje się wskazywać, że „... AppleTV nie połączy się spoza własnej podsieci ...”, nawet jeśli wykrywanie działa.
alx9r

6

Jest to powszechny problem w środowiskach edukacyjnych. Apple wykonało świetną robotę, sprzedając iPady i komputery Mac studentom / pracownikom i chcą korzystać z Airplay / Airprint / innych funkcji Bonjour. Jednak, jak wskazałeś, funkcje te polegają na pojedynczej domenie rozgłoszeniowej do wykrywania usług. Sieci korporacyjne / edukacyjne po prostu nie mają takiej struktury.

Problem jest tak powszechny, że wielu pracowników IT instytucji edukacyjnych spotkało się kilka lat temu i zwróciło się do Apple o naprawienie Bonjour, aby działał lepiej w tych środowiskach.


Aby bezpośrednio odpowiedzieć na twoje pytania, zazwyczaj będzie potrzebować bardzo wyspecjalizowanych konfiguracji, aby osiągnąć zasięg usług Airplay w twojej sieci. Konkretna konfiguracja będzie w dużym stopniu zależeć od aktualnego rozwiązania bezprzewodowego (Cisco, Aerohive, Ubiquity itp.). Ogólnie rzecz biorąc, jeśli szukasz dostawcy bezprzewodowego i Bonjour, powinieneś znaleźć dokumentację, która przynajmniej wskaże ci właściwy kierunek.

Miałem mieszany sukces we wdrażaniu rozwiązania bramy Avahi Bonjour firmy Cisco i nie zalecałbym , aby się tym zajmować, chyba że jest to absolutnie konieczne.

Najważniejsze dla mnie jest to, jak wskazałeś w trzecim pytaniu, zawsze będziesz na łasce Apple, ponieważ jest to zamknięta, zastrzeżona, nieudokumentowana usługa * przeznaczona dla środowisk sieci domowej. Tak więc, o ile Apple nie zdecyduje się tego zmienić, unikałbym implementowania go w sieci Enterprise tam, gdzie to możliwe.

* Podstawowy kod dla mDNSResponder jest otwarty, niezastrzeżony i dostępny na licencji Apache. Jednak implementacje tego wewnętrznego rozwiązania Apple w urządzeniach iDevices i MacOS są poza twoją kontrolą i mogą ulec zmianie w dowolnym momencie.


Dzięki za tę świetną odpowiedź. Kiedy mówisz „konkretna konfiguracja będzie w dużej mierze zależała od twojego obecnego rozwiązania bezprzewodowego”, masz na myśli, że każda z nich stosuje różne techniki, aby usługi Airplay działały w sieciach VLAN, lub że każdy z nich ma różne interfejsy administracyjne do konfigurowania tego, co odpowiada tej samej technice na kable?
alx9r

2
Właściwie trochę z obu. Różni dostawcy inaczej zajmą się szpiegowaniem i retransmisją pakietów multiemisji Bonjour, a według mnie różni dostawcy będą mieli bardzo różne sposoby konfiguracji.
Brett Lykins,

Czy możesz przejść do szczegółów na temat swoich ustaleń dzięki bramce bonjour?
Robert Siemer

4

Avahi może ci tutaj pomóc. Istnieje wiele opcji, ale powinno to spowodować ruch w podsieciach. Powinieneś być w stanie uzyskać go w polu ddwrt lub użyć interfejsów Raspberry Pi i dot1q.

 enable-reflector= Takes a boolean value ("yes"  or  "no").  If  set  to
       "yes"  avahi-daemon  will  reflect  incoming mDNS requests to all local
       network interfaces, effectively allowing clients to browse  mDNS/DNS-SD
       services  on  all  networks  connected  to  the gateway. The gateway is
       somewhat intelligent and should work with all kinds  of  mDNS  traffic,
       though  some functionality is lost (specifically the unicast reply bit,
       which is used rarely anyway). Make sure to not run multiple  reflectors
       between the same networks, this might cause them to play Ping Pong with
       mDNS packets. Defaults to "no".

 reflect-ipv= Takes a boolean value ("yes" or "no"). If set to "yes" and
       enable-reflector  is  enabled,  avahi-daemon  will forward mDNS traffic
       between IPv4 and IPv6, which is usually not  recommended.  Defaults  to
       "no".

Jestem prawie pewien, że ustawiłem stół do ping ponga :)
Jonathan Komar

3

Nie działa, ponieważ jest to technologia emisji ( multiemisji ). (patrz także: Bonjour) Przekraczanie domeny rozgłoszeniowej (tj. VLAN) wymaga serwera proxy. Nie jestem komputerem Mac, ale widziałem już taką konfigurację proxy - więc iDevices może dostać się do drukarki, w której połączenia bezprzewodowe i przewodowe były różne. Nie pamiętam programu, który był używany, ale nie był darmowy.


1
Dziękuję Ci. Wygląda na to, że użyłem złych wyszukiwanych haseł. Przeszukiwanie proxy Airplay daje to i to, co wydaje się dość wyczerpujące.
alx9r

Technicznie jest to technologia multiemisji.
bahamat

@ bahamat, prawda, ale zasięg lokalny, więc równie dobrze może być nadawany. Nie pozostawi naturalnie jednej domeny emisji.
Ricky Beam

To jest inżynieria sieci. Nie pytaj inaczej. Istnieje znacząca różnica między transmisją a multiemisją. Na stronie dyskusyjnej dla specjalistów inżynierii sieci, której nie można pominąć. mDNS jest multiemisją (czyli „m”) i domyślnie będzie ograniczony do pojedynczej domeny rozgłoszeniowej.
bahamat

1

Airplay podróżuje przez IP, więc obowiązuje normalny routing. Potrzebujesz routera do kierowania ruchu z jednej sieci VLAN do drugiej. Jednak dopóki nie zaczniesz mieszać z Multicastem, Bonjour pozostanie w lokalnej sieci VLAN.

Czy to zły pomysł? To zależy ;-). Musisz powiedzieć nam znacznie więcej o swoim środowisku produkcyjnym, aby zgadywać.


0

Jak zauważyli inni, istnieje bezpłatne rozwiązanie open source o nazwie Avahi ( http://www.avahi.org ), które może działać jako serwer proxy mDNS / Bonjour. Maszyna, na której działa to oprogramowanie, musi mieć interfejsy sieciowe do każdej sieci VLAN / podsieci, w której mają być reklamowane usługi mDNS. Aby rzeczywiste usługi działały, musisz jednak włączyć routing między sieciami VLAN lub zezwolić na połączenia TCP / UDP z urządzeniem obsługującym mDNS na listach dostępu lub zaporze. Inne opcje obejmują kontrolery Wi-Fi Cisco lub Ubiquiti, które mogą również służyć jako serwery proxy mDNS, a jeśli używasz komputera Mac, możesz utworzyć serwer proxy dla każdej usługi ( https://kb.acronis.com/sites/default/files/content/2013/ 01/39490 / wanbonjour_1.pdf). Problem z tym ostatnim rozwiązaniem polega na tym, że musisz utworzyć serwer proxy dla każdej pojedynczej usługi i musisz go powtórzyć przy każdym ponownym uruchomieniu komputera.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.