Chính xác thì cần gì để Airplay hoạt động trên các Vlan? [đóng cửa]


17

Có vẻ như AirPlay hoạt động ngoài luồng, nói một cách mơ hồ, chỉ trong một mạng LAN. Tôi không rõ chính xác tại sao, nhưng có vẻ như ít nhất khám phá phụ thuộc vào các chương trình phát sóng. Wikipedia nói rằng Airplay là một giao thức độc quyền có thể giải thích tại sao tài liệu duy nhất tôi tìm thấy không chính thức như thông số này tại github .

Vì vậy, câu hỏi của tôi là:

  1. Mạng có thể được cấu hình sao cho Airplay hoạt động trên các Vlan không?
  2. Nếu vậy, chính xác, những gì phải được phép vượt qua giữa các Vlan để làm cho công việc này?
  3. Đây có phải là một ý tưởng tồi trong một môi trường sản xuất do không có tài liệu giao thức chính thức?

1
Ứng dụng này là một văn phòng nơi có các thiết bị đáng tin cậy trên mạng 'đáng tin cậy' và các thiết bị khác trên mạng không dây của 'khách truy cập'. Các thiết bị từ cả hai mạng phải có khả năng Airplay đến TV phòng họp.
alx9r

Bạn có thể thêm chi tiết về môi trường của bạn? Ví dụ bạn đang sử dụng nhãn hiệu thiết bị không dây nào? Điều này sẽ ảnh hưởng lớn đến khả năng của bạn để làm điều này.
Brett Lykins

1
Tại sao không tạo SSID / Vlan cho mỗi phòng hội thảo với Apple TV cho phòng hội thảo đó trên vlan đó? Hoặc đặt chúng trực tiếp vào SSID khách và yêu cầu nhân viên kết nối với nó trong khi thuyết trình. Sau đó, bất cứ ai trong phòng sử dụng nó đều có thể nhảy lên mạng đó để thuyết trình. Nhân viên nội bộ có thể VPN vào mạng nội bộ từ đó để truy cập vào tài nguyên nội bộ (tùy thuộc vào thiết lập của bạn).
some_guy_long_gone

@legioxi Đó là kế hoạch hàng đầu tại thời điểm này: Tất cả các thiết bị bonjour sống trên các mạng khách và người dùng đáng tin cậy RA-VPN vào mạng đáng tin cậy từ đó nếu / khi cần. Vẫn còn vấn đề làm cho máy in có sẵn trên cả hai mạng, nhưng cho đến nay nó dường như là chiến lược tồi tệ nhất.
alx9r

1
Đây được gọi là Gateway Cổng khám phá dịch vụ 'trong các sản phẩm của Cisco - cisco.com/c/en/us/td/docs/ios-xml/ios/ipaddr_dns/configuration/
phỏng

Câu trả lời:


7

Có hai điều khác nhau trong thuật ngữ "Airplay".

Đầu tiên là về khám phá dịch vụ và đó là cách các thiết bị có khả năng nhận luồng Airplay thông báo lên mạng "Này! Tôi có thể nhận Airplay!". Nó được thực hiện bình thường thông qua dịch vụ có tên Bonjour (ít nhất là Apple gọi như vậy) hoặc DNS-SD . Đó là sử dụng phát đa hướng và đó là điểm nếu ai đó nói với bạn rằng "Airplay chỉ dành cho mạng LAN cục bộ" hoặc một cái gì đó. Bản thân luồng là UDP "bình thường".

Bây giờ vấn đề chính là làm thế nào bạn có được thông tin về máy thu Airplay cho người gửi tiềm năng trong một mạng khác. Có hai lựa chọn lý thuyết:

  1. Bạn có thể chuyển tiếp phát đa hướng. Nó có thể là khó khăn mặc dù, nhưng có bộ định tuyến / tường lửa có khả năng này. RTFM chính xác như thế nào, nhưng ý tưởng là bạn phải chuyển tiếp lưu lượng phát đa hướng với địa chỉ đích 224.0.0.251 sang một mạng khác và bạn phải làm điều đó mà không làm giảm TTL.

  2. Một tùy chọn khác là sử dụng DNS-SD unicast. Bạn có thể sử dụng DNS bình thường để thông báo chính thông tin được phân phối tự động thông qua DNS-SD đa hướng và bạn có thể sử dụng một chút trợ giúp từ tiện ích dns-sd (1) trên MacOSX để nhận thông tin chính xác ghi vào tệp vùng DNS của bạn . Thực hiện lệnh này trong mạng LAN với máy thu Airplay và điều này sẽ cung cấp cho bạn tất cả thông tin bạn cần:

    $ dns-sd -Z _airplay._tcp
    Browsing for _airplay._tcp
    ...
    
  3. Ngoài ra còn có proxy DNS-SD (ví dụ avahi có thể được sử dụng như vậy).

Bây giờ, tôi đã nói "về mặt lý thuyết", bởi vì tôi chưa thử nghiệm nó và bất cứ điều gì bạn làm với các giao thức, chuyển tiếp, v.v., MIGHT có một số rào cản ngoài tầm kiểm soát của bạn - rốt cuộc đó là Apple. Bạn có thể nhận được tất cả thông tin một cách chính xác cho người gửi tiềm năng, nhưng iOS / MacOSX vẫn có thể từ chối vì nó không giống như vậy vì một số lý do và v.v.

Có thêm một tùy chọn (một lần nữa về mặt lý thuyết;) - tạo một mục DNS-SD cho địa chỉ bộ định tuyến của bạn dưới dạng bộ thu Airplay cho mạng với người gửi Airplay và chuyển tiếp (NAT) luồng UDP sang bộ thu Airplay thực. Nhưng ngay cả với điều này, có một số khả năng (đối với các kỹ sư của Apple) để phá vỡ nó.

Tiếp tục, kiểm tra nó và cho chúng tôi biết về kết quả của bạn.


Ừ Vì vậy, dựa trên đánh giá của bạn để có được công việc này về cơ bản nắm bắt được một thử nghiệm.
alx9r

1
Bạn đang ở trên mặt đất không có giấy tờ, vì vậy nó sẽ luôn luôn là về thử nghiệm. Apple không hỗ trợ nó, vì vậy nó cũng có thể phá vỡ bất kỳ lúc nào (với bất kỳ bản cập nhật nào, v.v.). Nhưng tìm hiểu về những thứ bạn sẽ làm, hiểu nó và bạn có thể làm cho nó an toàn và sẽ có thể làm cho nó hoạt động trở lại nếu nó bị hỏng. Hoặc ít nhất là hiểu tại sao chính xác bạn không thể làm cho nó hoạt động;).
Thơm

Đến điểm cuối cùng trong đoạn áp chót của bạn: Bài đăng này dường như chỉ ra rằng "... AppleTV sẽ không kết nối từ bên ngoài mạng con của chính nó ..." ngay cả khi khám phá hoạt động.
alx9r

6

Đây là một vấn đề phổ biến trong môi trường giáo dục. Apple đã thực hiện một công việc tuyệt vời là bán iPad và máy Mac cho sinh viên / nhân viên và họ muốn sử dụng chức năng Airplay / Airprint / Bonjour khác. Tuy nhiên, như bạn đã chỉ ra, các tính năng này dựa trên một miền quảng bá để khám phá dịch vụ. Mạng lưới doanh nghiệp / giáo dục không được cấu trúc theo cách đó.

Vấn đề phổ biến đến mức nhiều nhân viên IT của tổ chức giáo dục đã gặp nhau vài năm trước và kiến nghị Apple sửa Bonjour để hoạt động tốt hơn trong những môi trường này.


Để trực tiếp giải quyết các câu hỏi của bạn, thông thường sẽ cần các cấu hình rất chuyên biệt để thực hiện việc mở rộng các dịch vụ Airplay trên mạng của bạn. Và cấu hình cụ thể sẽ phụ thuộc rất nhiều vào giải pháp không dây hiện tại của bạn (Cisco, Aerohive, Ubiquity, v.v.). Nói chung, nếu bạn tìm kiếm nhà cung cấp không dây và Bonjour của mình, bạn nên tìm tài liệu để ít nhất đưa bạn đi đúng hướng.

Tôi đã thành công trong việc triển khai giải pháp cổng Avahi Bonjour của Cisco và không khuyên bạn nên xem xét trừ khi bạn thực sự phải làm.

Điểm mấu chốt với tôi là, như bạn đã chỉ ra trong câu hỏi thứ ba của mình, bạn sẽ luôn cảm thấy xót xa vì đây là dịch vụ khép kín, độc quyền, không có giấy tờ * dành cho môi trường mạng gia đình. Vì vậy, trừ khi Apple quyết định thay đổi điều đó, tôi sẽ tránh triển khai nó trong mạng Doanh nghiệp bất cứ khi nào có thể.

* Mã cơ bản cho mDNSResponder là mở, không độc quyền và có sẵn theo giấy phép Apache. Tuy nhiên, việc Apple triển khai nội bộ này cho iDevices và MacOS của họ đều nằm ngoài tầm kiểm soát của bạn và có thể thay đổi bất cứ lúc nào.


Cảm ơn câu trả lời tuyệt vời này. Khi bạn nói "cấu hình cụ thể sẽ phụ thuộc nhiều vào giải pháp không dây hiện tại của bạn", bạn có nghĩa là mỗi người sử dụng các kỹ thuật khác nhau để làm cho các dịch vụ Airplay hoạt động trên Vlan hoặc mỗi máy có giao diện quản trị khác nhau để định cấu hình số tiền cho cùng một kỹ thuật trên các dây?
alx9r

2
Một chút của cả hai thực sự. Các nhà cung cấp khác nhau sẽ xử lý việc rình mò và truyền lại các gói đa tuyến Bonjour khác nhau, và các nhà cung cấp khác nhau sẽ có nhiều cách khác nhau để định cấu hình theo kinh nghiệm của tôi.
Brett Lykins

Bạn có thể đi vào chi tiết về những phát hiện của bạn với giải pháp cổng bonjour không?
Robert Siemer

4

Avahi có thể giúp bạn ở đây. Có rất nhiều tùy chọn nhưng điều này sẽ có được lưu lượng truy cập trên các mạng con. Bạn sẽ có thể lấy nó trên hộp ddwrt hoặc sử dụng giao diện Raspberry Pi và 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".

Tôi khá chắc chắn rằng tôi đã thiết lập một bàn bóng bàn :)
Jonathan Komar

3

Nó không hoạt động vì nó là một công nghệ phát sóng ( multicast ). (xem thêm: Bonjour) Băng qua một miền quảng bá (ví dụ Vlan) yêu cầu proxy. Tôi không phải là người Mac, nhưng tôi đã thấy một thiết lập proxy như vậy trước đây - vì vậy iDevices có thể đến một máy in nơi không dây và có dây khác nhau. Tôi không nhớ chương trình đã được sử dụng, nhưng nó không miễn phí.


1
Cảm ơn bạn. Có vẻ như tôi đã sử dụng các thuật ngữ tìm kiếm sai. Tìm kiếm proxy Airplay mang lại điều nàyđiều này có vẻ khá toàn diện.
alx9r

Về mặt kỹ thuật, đây là một công nghệ phát đa hướng.
bahamat

@bahamat, đúng, nhưng phạm vi địa phương vì vậy nó cũng có thể được phát sóng. Nó sẽ không tự nhiên để lại một miền phát sóng duy nhất.
Ricky Beam

Đây là Kỹ thuật mạng. Không hỏi khác nhau. Có một sự khác biệt đáng kể giữa phát sóng và phát đa hướng. Trên một trang thảo luận cho các chuyên gia kỹ thuật mạng không phải là một sự khác biệt để coi thường. mDNS là multicast (do đó "m") và theo mặc định sẽ bị giới hạn trong một miền quảng bá.
bahamat

1

Airplay đi qua IP, do đó định tuyến thông thường được áp dụng. Bạn cần một bộ định tuyến để định tuyến lưu lượng truy cập từ Vlan này sang Vlan khác. Trừ khi bạn bắt đầu nhắn tin với Multicast, tuy nhiên Bonjour sẽ ở lại Vlan cục bộ.

Đây có phải là một ý tưởng tồi? Nó phụ thuộc ;-). Bạn phải cho chúng tôi biết nhiều hơn về môi trường sản xuất của bạn để đưa ra một phỏng đoán có giáo dục.


0

Như những người khác đã lưu ý, có một giải pháp nguồn mở miễn phí có tên Avahi ( http://www.avahi.org ) có thể hoạt động như một proxy mDNS / Bonjour. Máy mà phần mềm này chạy phải có giao diện mạng cho mỗi Vlan / mạng con bạn muốn các dịch vụ mDNS được quảng cáo đến / từ. Tuy nhiên, để các dịch vụ thực tế hoạt động, bạn phải bật định tuyến Vlan hoặc cho phép kết nối TCP / UDP đến thiết bị hỗ trợ mDNS trong danh sách truy cập hoặc tường lửa của bạn. Các tùy chọn khác bao gồm bộ điều khiển wifi Cisco hoặc Ubiquiti cũng có thể đóng vai trò là proxy của mDNS hoặc nếu sử dụng máy Mac, bạn có thể tạo proxy cho mỗi dịch vụ ( https://kb.acronis.com/sites/default/files/content/2013/ 01/39490 / wanbonjour_1.pdf). Vấn đề với giải pháp cuối cùng này là bạn phải tạo proxy cho từng dịch vụ riêng lẻ và bạn phải làm lại mỗi lần máy khởi động lại.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.