Netwerkvereisten en firewall-instellingen

Screenbird zelf gebruikt uitsluitend HTTPS en WebSocket Secure over poort 443. Op een streng netwerk zet je de domeinen hieronder op de allowlist: één lijst voor het dashboard en één voor de schermen (de player). Gebruik je een Amazon Signage Stick of een Fire TV, lees dan ook het kopje Tijdsynchronisatie op Amazon-apparaten: die apparaten hebben zelf extra verbindingen nodig.

Wanneer heb je dit nodig?

De meeste thuis- en kantoornetwerken werken meteen. Deze lijst heb je nodig als het netwerk onbekende domeinen blokkeert, een proxy of webfilter gebruikt, of als de schermen in een apart VLAN hangen met beperkte internettoegang.

Domeinen voor het dashboard

Voor de computers waarop je team content beheert:

  • screenbird.app: het dashboard zelf
  • dev.screenbird.app: staging, alleen nodig als je team daarmee werkt
  • *.supabase.co: database en inloggen, ook via WebSocket
  • cdn.screenbird.app: bestanden, afbeeldingen, video's en eigen lettertypes
  • integrations.screenbird.app: de app-voorbeelden in het dashboard
  • lh3.googleusercontent.com en avatars.githubusercontent.com: profielfoto's van gekoppelde accounts
  • challenges.cloudflare.com: beveiligingscontrole bij inloggen en aanmelden
  • wss://api.screenbird.app: live updates tussen dashboard en schermen
  • js.stripe.com en *.js.stripe.com: de betaalpopup bij aanmelden en bij het wijzigen van je abonnement
  • api.stripe.com en hooks.stripe.com: het afronden van de betaling, inclusief 3D Secure
  • m.stripe.com en m.stripe.network: de fraudecontrole van Stripe

Alleen nodig voor bepaalde functies:

  • apis.google.com en docs.google.com: de kiezer voor Google Drive, Documenten, Spreadsheets en Presentaties
  • images.pexels.com: de stockfotobibliotheek
  • api.qrserver.com: QR-codes in ontwerpsjablonen
  • geocoding-api.open-meteo.com: het zoeken van een locatie in de Weer-app

Domeinen voor de schermen

Voor elk apparaat waarop de player draait:

  • player.screenbird.app: de player zelf
  • api.screenbird.app: aanmelden, hartslag en het ophalen van content, ook via WebSocket
  • cdn.screenbird.app: de content die het scherm afspeelt
  • media.screenbird.app: installatiebestanden en updates van de apps
  • integrations.screenbird.app: alle apps en ontwerpen draaien hierin
  • mirror.screenbird.app: alleen nodig voor Scherm delen, ook via WebSocket
  • fonts.googleapis.com en fonts.gstatic.com: lettertypes in apps en ontwerpen

Alleen nodig voor bepaalde apps:

  • www.youtube.com en player.vimeo.com: de video-apps

Gebruik je een koppeling of app niet, dan hoef je het bijbehorende domein niet toe te staan.

Poorten en protocollen

  • HTTPS over poort 443 voor al het verkeer
  • WebSocket Secure (WSS) over dezelfde poort 443 voor live updates tussen dashboard en scherm

Screenbird zelf gebruikt geen andere poorten. Een Amazon Signage Stick of Fire TV heeft daarnaast wel extra verbindingen nodig om zijn klok gelijk te zetten (UDP-poort 123 en TCP-poort 80), zie het kopje hieronder.

Tijdsynchronisatie op Amazon-apparaten

Dit kopje geldt alleen voor de Amazon Signage Stick en de Fire TV. Gebruik je een Samsung, LG, Android-tv, pc, Mac of Raspberry Pi, dan kun je het overslaan.

Deze apparaten hebben geen klok die doorloopt als de stroom eraf gaat. Ze halen de tijd bij het opstarten van internet. Lukt dat niet, dan starten ze op met een datum die weken tot maanden in het verleden ligt, en met een verkeerde datum wordt elke beveiligde verbinding geweigerd. Het scherm blijft dan offline, ook als poort 443 volledig open staat en alle domeinen op de allowlist staan.

Laat daarom deze verbindingen toe:

  • ftv-smp.ntp-fireos.com over UDP, poort 123: het ophalen van de tijd. Deze naam verwijst naar time.aws.com; filtert je firewall op DNS-naam, laat dan beide toe
  • firetvcaptiveportal.com, fireoscaptiveportal.com en kindle-time.amazon.com over TCP, poort 80, niet onderschept: de netwerkcontrole en de terugval voor het ophalen van de tijd

Poort 80 is nodig, ook als UDP 123 openstaat. Het apparaat zet zijn tijd alleen op een netwerk dat het heeft gevalideerd, en die controle is zelf een verzoek op poort 80. Is uitgaande poort 80 geblokkeerd, dan wordt de klok nooit gezet, wat er ook op UDP 123 gebeurt.

Het apparaat probeert het opnieuw bij elke verbinding met een netwerk en daarna nog maar één keer per 7 dagen. Een scherm dat de eerste poging mist, kan daardoor lang op de verkeerde datum blijven staan. Is de firewall aangepast, start het apparaat dan opnieuw op of verbind het opnieuw met het netwerk, zodat het een nieuwe poging doet.

Dingen om op te letten:

  • Het apparaat gebruikt vaste adressen en accepteert geen tijdserver die het netwerk zelf uitdeelt, dus een eigen tijdserver opgeven helpt niet.
  • Verkeer op poort 80 mag niet worden onderschept. Een transparante proxy die het verzoek doorstuurt naar internet is prima. Een proxy of webfilter die zelf antwoordt, bijvoorbeeld met een blokkeerpagina, zet de klok op zijn eigen tijd, en dat klopt alleen als de klok van die proxy klopt. Een cache die oude antwoorden herhaalt kan een verouderde tijd zetten.
  • Gebruik een netwerk zonder inlogpagina (captive portal). Op een netwerk met een inlogpagina doet het apparaat één poging en slaat het resultaat niet op, dus de klok is pas betrouwbaar als de inlogpagina is gepasseerd. Dat is precies wat veel gastennetwerken doen.

Blijft een scherm gekoppeld maar offline terwijl het apparaat wel internet heeft? Dan is dit de eerste plek om te kijken.

Bandbreedte

Hoeveel bandbreedte je nodig hebt hangt af van de grootte van je content. Een scherm downloadt een bestand één keer en speelt het daarna lokaal af, dus na het downloaden is er nauwelijks verkeer. In rust houdt een scherm alleen de verbinding aan met een hartslag elke 60 seconden. Werkt de WebSocket niet, dan haalt het scherm elk uur alsnog zijn content op. Livestreams en apps die telkens nieuwe gegevens ophalen blijven wel bandbreedte gebruiken, afhankelijk van de bron.

Korte netwerkstoringen onderbreken het afspelen niet: gedownloade content blijft doorspelen.

Testen of het netwerk klopt

Open op het apparaat een browser en ga naar:

  • https://player.screenbird.app: hier hoort het koppelscherm met een koppelcode te verschijnen
  • https://screenbird.app: hier hoort de inlogpagina van het dashboard te verschijnen

Lukt een van beide niet, kijk dan in de firewall-logs welke van bovenstaande domeinen geblokkeerd is.

Waar staan mijn gegevens?

  • De database draait bij Supabase in Parijs (regio eu-west-3).
  • De offsite backups staan bij Backblaze in Amsterdam (regio eu-central-003).
  • Het dashboard, de apps en de bestanden worden uitgeleverd via het netwerk van Cloudflare, dat wereldwijd op edge-locaties draait.

De volledige lijst met verwerkers en de bewaartermijnen staan in de privacyverklaring op screenbird.app.

Hulp bij een zakelijke uitrol

Rol je veel schermen uit achter een bedrijfsnetwerk en heb je documentatie voor je IT-afdeling nodig? Mail dan naar support@screenbird.app.

Gerelateerde artikelen

© screenbird.app