network discovery with swift

Post on 02-Jul-2022

3 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

NETWORK DISCOVERY WITH SWIFTAlexandre Tavares iOS Developer at STRV

DNS-SD and mDNS

2

DNS-SDDNS Service Discovery is a way of using standard DNS programming interfaces servers and packet formats to browse the network for services

DNS Service Discovery is compatible with but not dependent on Multicast DNS

3httpwwwdns-sdorg

4

httpswwwmaterialuicomaterialIconshardwarecast_white_576x576png1049697_googlecast_tcp

DNS-SD

_googlecast_tcp

_airplay_tcp

_spotify-connect_tcp

mDNSMulticast DNS is a way of using familiar DNS programming interfaces packet formats and operating semantics in a small network where no conventional DNS server has been installed

5httpwwwmulticastdnsorg

6

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocal

Who is macbooklocal

7

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocal

192168020

macbooklocals IP is 192168020

8

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocalbull _googlecast_tcplocalbull _airplay_tcplocalbull _spotify-connect_tcplocal

bull _ipp_tcplocal

bull _plexmediasvr_tcplocalbull _spotify-connect_tcplocal

any googlecasthere

9

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocalbull _googlecast_tcplocalbull _airplay_tcplocalbull _spotify-connect_tcplocal

bull _ipp_tcplocal

bull _plexmediasvr_tcplocalbull _spotify-connect_tcplocal

yeptelevisionlocal

BONJOURCombines mDNS and DNS-SD to provide zero configuration networking

Also works over P2P bluetooth and WiFi

10

BONJOUR SUPPORT

11

FRAMEWORKS

12

13

FOUNDATION

NetService

SDKsbull iOS 20+bull macOS 102+bull tvOS 90+

NetServiceBrowser

NETWORK

SDKsbull iOS 130+Beta

bull macOS 1015+Beta

bull tvOS 130+Beta

bull watchOS 60+Beta

bull Xcode 110+Beta

SDKsbull iOS 120+bull macOS 1014+bull tvOS 120+bull watchOS 50+bull Xcode 100+

NWListener

NWConnection

NWBrowser

DEMO

14

USAGE

15

HOW TO START

16

NWListener

NWConnection

NWBrowserNetService

NetServiceBrowser

Foundationframework Networkframework

17

httpsgithubcomAlTavaresCiao

THATrsquoS ITAlexandre Tavares

alexandretavaresstrvcom

QUESTIONS

DNS-SD and mDNS

2

DNS-SDDNS Service Discovery is a way of using standard DNS programming interfaces servers and packet formats to browse the network for services

DNS Service Discovery is compatible with but not dependent on Multicast DNS

3httpwwwdns-sdorg

4

httpswwwmaterialuicomaterialIconshardwarecast_white_576x576png1049697_googlecast_tcp

DNS-SD

_googlecast_tcp

_airplay_tcp

_spotify-connect_tcp

mDNSMulticast DNS is a way of using familiar DNS programming interfaces packet formats and operating semantics in a small network where no conventional DNS server has been installed

5httpwwwmulticastdnsorg

6

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocal

Who is macbooklocal

7

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocal

192168020

macbooklocals IP is 192168020

8

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocalbull _googlecast_tcplocalbull _airplay_tcplocalbull _spotify-connect_tcplocal

bull _ipp_tcplocal

bull _plexmediasvr_tcplocalbull _spotify-connect_tcplocal

any googlecasthere

9

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocalbull _googlecast_tcplocalbull _airplay_tcplocalbull _spotify-connect_tcplocal

bull _ipp_tcplocal

bull _plexmediasvr_tcplocalbull _spotify-connect_tcplocal

yeptelevisionlocal

BONJOURCombines mDNS and DNS-SD to provide zero configuration networking

Also works over P2P bluetooth and WiFi

10

BONJOUR SUPPORT

11

FRAMEWORKS

12

13

FOUNDATION

NetService

SDKsbull iOS 20+bull macOS 102+bull tvOS 90+

NetServiceBrowser

NETWORK

SDKsbull iOS 130+Beta

bull macOS 1015+Beta

bull tvOS 130+Beta

bull watchOS 60+Beta

bull Xcode 110+Beta

SDKsbull iOS 120+bull macOS 1014+bull tvOS 120+bull watchOS 50+bull Xcode 100+

NWListener

NWConnection

NWBrowser

DEMO

14

USAGE

15

HOW TO START

16

NWListener

NWConnection

NWBrowserNetService

NetServiceBrowser

Foundationframework Networkframework

17

httpsgithubcomAlTavaresCiao

THATrsquoS ITAlexandre Tavares

alexandretavaresstrvcom

QUESTIONS

DNS-SDDNS Service Discovery is a way of using standard DNS programming interfaces servers and packet formats to browse the network for services

DNS Service Discovery is compatible with but not dependent on Multicast DNS

3httpwwwdns-sdorg

4

httpswwwmaterialuicomaterialIconshardwarecast_white_576x576png1049697_googlecast_tcp

DNS-SD

_googlecast_tcp

_airplay_tcp

_spotify-connect_tcp

mDNSMulticast DNS is a way of using familiar DNS programming interfaces packet formats and operating semantics in a small network where no conventional DNS server has been installed

5httpwwwmulticastdnsorg

6

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocal

Who is macbooklocal

7

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocal

192168020

macbooklocals IP is 192168020

8

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocalbull _googlecast_tcplocalbull _airplay_tcplocalbull _spotify-connect_tcplocal

bull _ipp_tcplocal

bull _plexmediasvr_tcplocalbull _spotify-connect_tcplocal

any googlecasthere

9

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocalbull _googlecast_tcplocalbull _airplay_tcplocalbull _spotify-connect_tcplocal

bull _ipp_tcplocal

bull _plexmediasvr_tcplocalbull _spotify-connect_tcplocal

yeptelevisionlocal

BONJOURCombines mDNS and DNS-SD to provide zero configuration networking

Also works over P2P bluetooth and WiFi

10

BONJOUR SUPPORT

11

FRAMEWORKS

12

13

FOUNDATION

NetService

SDKsbull iOS 20+bull macOS 102+bull tvOS 90+

NetServiceBrowser

NETWORK

SDKsbull iOS 130+Beta

bull macOS 1015+Beta

bull tvOS 130+Beta

bull watchOS 60+Beta

bull Xcode 110+Beta

SDKsbull iOS 120+bull macOS 1014+bull tvOS 120+bull watchOS 50+bull Xcode 100+

NWListener

NWConnection

NWBrowser

DEMO

14

USAGE

15

HOW TO START

16

NWListener

NWConnection

NWBrowserNetService

NetServiceBrowser

Foundationframework Networkframework

17

httpsgithubcomAlTavaresCiao

THATrsquoS ITAlexandre Tavares

alexandretavaresstrvcom

QUESTIONS

4

httpswwwmaterialuicomaterialIconshardwarecast_white_576x576png1049697_googlecast_tcp

DNS-SD

_googlecast_tcp

_airplay_tcp

_spotify-connect_tcp

mDNSMulticast DNS is a way of using familiar DNS programming interfaces packet formats and operating semantics in a small network where no conventional DNS server has been installed

5httpwwwmulticastdnsorg

6

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocal

Who is macbooklocal

7

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocal

192168020

macbooklocals IP is 192168020

8

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocalbull _googlecast_tcplocalbull _airplay_tcplocalbull _spotify-connect_tcplocal

bull _ipp_tcplocal

bull _plexmediasvr_tcplocalbull _spotify-connect_tcplocal

any googlecasthere

9

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocalbull _googlecast_tcplocalbull _airplay_tcplocalbull _spotify-connect_tcplocal

bull _ipp_tcplocal

bull _plexmediasvr_tcplocalbull _spotify-connect_tcplocal

yeptelevisionlocal

BONJOURCombines mDNS and DNS-SD to provide zero configuration networking

Also works over P2P bluetooth and WiFi

10

BONJOUR SUPPORT

11

FRAMEWORKS

12

13

FOUNDATION

NetService

SDKsbull iOS 20+bull macOS 102+bull tvOS 90+

NetServiceBrowser

NETWORK

SDKsbull iOS 130+Beta

bull macOS 1015+Beta

bull tvOS 130+Beta

bull watchOS 60+Beta

bull Xcode 110+Beta

SDKsbull iOS 120+bull macOS 1014+bull tvOS 120+bull watchOS 50+bull Xcode 100+

NWListener

NWConnection

NWBrowser

DEMO

14

USAGE

15

HOW TO START

16

NWListener

NWConnection

NWBrowserNetService

NetServiceBrowser

Foundationframework Networkframework

17

httpsgithubcomAlTavaresCiao

THATrsquoS ITAlexandre Tavares

alexandretavaresstrvcom

QUESTIONS

mDNSMulticast DNS is a way of using familiar DNS programming interfaces packet formats and operating semantics in a small network where no conventional DNS server has been installed

5httpwwwmulticastdnsorg

6

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocal

Who is macbooklocal

7

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocal

192168020

macbooklocals IP is 192168020

8

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocalbull _googlecast_tcplocalbull _airplay_tcplocalbull _spotify-connect_tcplocal

bull _ipp_tcplocal

bull _plexmediasvr_tcplocalbull _spotify-connect_tcplocal

any googlecasthere

9

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocalbull _googlecast_tcplocalbull _airplay_tcplocalbull _spotify-connect_tcplocal

bull _ipp_tcplocal

bull _plexmediasvr_tcplocalbull _spotify-connect_tcplocal

yeptelevisionlocal

BONJOURCombines mDNS and DNS-SD to provide zero configuration networking

Also works over P2P bluetooth and WiFi

10

BONJOUR SUPPORT

11

FRAMEWORKS

12

13

FOUNDATION

NetService

SDKsbull iOS 20+bull macOS 102+bull tvOS 90+

NetServiceBrowser

NETWORK

SDKsbull iOS 130+Beta

bull macOS 1015+Beta

bull tvOS 130+Beta

bull watchOS 60+Beta

bull Xcode 110+Beta

SDKsbull iOS 120+bull macOS 1014+bull tvOS 120+bull watchOS 50+bull Xcode 100+

NWListener

NWConnection

NWBrowser

DEMO

14

USAGE

15

HOW TO START

16

NWListener

NWConnection

NWBrowserNetService

NetServiceBrowser

Foundationframework Networkframework

17

httpsgithubcomAlTavaresCiao

THATrsquoS ITAlexandre Tavares

alexandretavaresstrvcom

QUESTIONS

6

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocal

Who is macbooklocal

7

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocal

192168020

macbooklocals IP is 192168020

8

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocalbull _googlecast_tcplocalbull _airplay_tcplocalbull _spotify-connect_tcplocal

bull _ipp_tcplocal

bull _plexmediasvr_tcplocalbull _spotify-connect_tcplocal

any googlecasthere

9

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocalbull _googlecast_tcplocalbull _airplay_tcplocalbull _spotify-connect_tcplocal

bull _ipp_tcplocal

bull _plexmediasvr_tcplocalbull _spotify-connect_tcplocal

yeptelevisionlocal

BONJOURCombines mDNS and DNS-SD to provide zero configuration networking

Also works over P2P bluetooth and WiFi

10

BONJOUR SUPPORT

11

FRAMEWORKS

12

13

FOUNDATION

NetService

SDKsbull iOS 20+bull macOS 102+bull tvOS 90+

NetServiceBrowser

NETWORK

SDKsbull iOS 130+Beta

bull macOS 1015+Beta

bull tvOS 130+Beta

bull watchOS 60+Beta

bull Xcode 110+Beta

SDKsbull iOS 120+bull macOS 1014+bull tvOS 120+bull watchOS 50+bull Xcode 100+

NWListener

NWConnection

NWBrowser

DEMO

14

USAGE

15

HOW TO START

16

NWListener

NWConnection

NWBrowserNetService

NetServiceBrowser

Foundationframework Networkframework

17

httpsgithubcomAlTavaresCiao

THATrsquoS ITAlexandre Tavares

alexandretavaresstrvcom

QUESTIONS

7

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocal

192168020

macbooklocals IP is 192168020

8

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocalbull _googlecast_tcplocalbull _airplay_tcplocalbull _spotify-connect_tcplocal

bull _ipp_tcplocal

bull _plexmediasvr_tcplocalbull _spotify-connect_tcplocal

any googlecasthere

9

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocalbull _googlecast_tcplocalbull _airplay_tcplocalbull _spotify-connect_tcplocal

bull _ipp_tcplocal

bull _plexmediasvr_tcplocalbull _spotify-connect_tcplocal

yeptelevisionlocal

BONJOURCombines mDNS and DNS-SD to provide zero configuration networking

Also works over P2P bluetooth and WiFi

10

BONJOUR SUPPORT

11

FRAMEWORKS

12

13

FOUNDATION

NetService

SDKsbull iOS 20+bull macOS 102+bull tvOS 90+

NetServiceBrowser

NETWORK

SDKsbull iOS 130+Beta

bull macOS 1015+Beta

bull tvOS 130+Beta

bull watchOS 60+Beta

bull Xcode 110+Beta

SDKsbull iOS 120+bull macOS 1014+bull tvOS 120+bull watchOS 50+bull Xcode 100+

NWListener

NWConnection

NWBrowser

DEMO

14

USAGE

15

HOW TO START

16

NWListener

NWConnection

NWBrowserNetService

NetServiceBrowser

Foundationframework Networkframework

17

httpsgithubcomAlTavaresCiao

THATrsquoS ITAlexandre Tavares

alexandretavaresstrvcom

QUESTIONS

8

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocalbull _googlecast_tcplocalbull _airplay_tcplocalbull _spotify-connect_tcplocal

bull _ipp_tcplocal

bull _plexmediasvr_tcplocalbull _spotify-connect_tcplocal

any googlecasthere

9

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocalbull _googlecast_tcplocalbull _airplay_tcplocalbull _spotify-connect_tcplocal

bull _ipp_tcplocal

bull _plexmediasvr_tcplocalbull _spotify-connect_tcplocal

yeptelevisionlocal

BONJOURCombines mDNS and DNS-SD to provide zero configuration networking

Also works over P2P bluetooth and WiFi

10

BONJOUR SUPPORT

11

FRAMEWORKS

12

13

FOUNDATION

NetService

SDKsbull iOS 20+bull macOS 102+bull tvOS 90+

NetServiceBrowser

NETWORK

SDKsbull iOS 130+Beta

bull macOS 1015+Beta

bull tvOS 130+Beta

bull watchOS 60+Beta

bull Xcode 110+Beta

SDKsbull iOS 120+bull macOS 1014+bull tvOS 120+bull watchOS 50+bull Xcode 100+

NWListener

NWConnection

NWBrowser

DEMO

14

USAGE

15

HOW TO START

16

NWListener

NWConnection

NWBrowserNetService

NetServiceBrowser

Foundationframework Networkframework

17

httpsgithubcomAlTavaresCiao

THATrsquoS ITAlexandre Tavares

alexandretavaresstrvcom

QUESTIONS

9

macbooklocal

httpswwwmaterialu1049697

printerlocal

televisionlocalbull _googlecast_tcplocalbull _airplay_tcplocalbull _spotify-connect_tcplocal

bull _ipp_tcplocal

bull _plexmediasvr_tcplocalbull _spotify-connect_tcplocal

yeptelevisionlocal

BONJOURCombines mDNS and DNS-SD to provide zero configuration networking

Also works over P2P bluetooth and WiFi

10

BONJOUR SUPPORT

11

FRAMEWORKS

12

13

FOUNDATION

NetService

SDKsbull iOS 20+bull macOS 102+bull tvOS 90+

NetServiceBrowser

NETWORK

SDKsbull iOS 130+Beta

bull macOS 1015+Beta

bull tvOS 130+Beta

bull watchOS 60+Beta

bull Xcode 110+Beta

SDKsbull iOS 120+bull macOS 1014+bull tvOS 120+bull watchOS 50+bull Xcode 100+

NWListener

NWConnection

NWBrowser

DEMO

14

USAGE

15

HOW TO START

16

NWListener

NWConnection

NWBrowserNetService

NetServiceBrowser

Foundationframework Networkframework

17

httpsgithubcomAlTavaresCiao

THATrsquoS ITAlexandre Tavares

alexandretavaresstrvcom

QUESTIONS

BONJOURCombines mDNS and DNS-SD to provide zero configuration networking

Also works over P2P bluetooth and WiFi

10

BONJOUR SUPPORT

11

FRAMEWORKS

12

13

FOUNDATION

NetService

SDKsbull iOS 20+bull macOS 102+bull tvOS 90+

NetServiceBrowser

NETWORK

SDKsbull iOS 130+Beta

bull macOS 1015+Beta

bull tvOS 130+Beta

bull watchOS 60+Beta

bull Xcode 110+Beta

SDKsbull iOS 120+bull macOS 1014+bull tvOS 120+bull watchOS 50+bull Xcode 100+

NWListener

NWConnection

NWBrowser

DEMO

14

USAGE

15

HOW TO START

16

NWListener

NWConnection

NWBrowserNetService

NetServiceBrowser

Foundationframework Networkframework

17

httpsgithubcomAlTavaresCiao

THATrsquoS ITAlexandre Tavares

alexandretavaresstrvcom

QUESTIONS

BONJOUR SUPPORT

11

FRAMEWORKS

12

13

FOUNDATION

NetService

SDKsbull iOS 20+bull macOS 102+bull tvOS 90+

NetServiceBrowser

NETWORK

SDKsbull iOS 130+Beta

bull macOS 1015+Beta

bull tvOS 130+Beta

bull watchOS 60+Beta

bull Xcode 110+Beta

SDKsbull iOS 120+bull macOS 1014+bull tvOS 120+bull watchOS 50+bull Xcode 100+

NWListener

NWConnection

NWBrowser

DEMO

14

USAGE

15

HOW TO START

16

NWListener

NWConnection

NWBrowserNetService

NetServiceBrowser

Foundationframework Networkframework

17

httpsgithubcomAlTavaresCiao

THATrsquoS ITAlexandre Tavares

alexandretavaresstrvcom

QUESTIONS

FRAMEWORKS

12

13

FOUNDATION

NetService

SDKsbull iOS 20+bull macOS 102+bull tvOS 90+

NetServiceBrowser

NETWORK

SDKsbull iOS 130+Beta

bull macOS 1015+Beta

bull tvOS 130+Beta

bull watchOS 60+Beta

bull Xcode 110+Beta

SDKsbull iOS 120+bull macOS 1014+bull tvOS 120+bull watchOS 50+bull Xcode 100+

NWListener

NWConnection

NWBrowser

DEMO

14

USAGE

15

HOW TO START

16

NWListener

NWConnection

NWBrowserNetService

NetServiceBrowser

Foundationframework Networkframework

17

httpsgithubcomAlTavaresCiao

THATrsquoS ITAlexandre Tavares

alexandretavaresstrvcom

QUESTIONS

13

FOUNDATION

NetService

SDKsbull iOS 20+bull macOS 102+bull tvOS 90+

NetServiceBrowser

NETWORK

SDKsbull iOS 130+Beta

bull macOS 1015+Beta

bull tvOS 130+Beta

bull watchOS 60+Beta

bull Xcode 110+Beta

SDKsbull iOS 120+bull macOS 1014+bull tvOS 120+bull watchOS 50+bull Xcode 100+

NWListener

NWConnection

NWBrowser

DEMO

14

USAGE

15

HOW TO START

16

NWListener

NWConnection

NWBrowserNetService

NetServiceBrowser

Foundationframework Networkframework

17

httpsgithubcomAlTavaresCiao

THATrsquoS ITAlexandre Tavares

alexandretavaresstrvcom

QUESTIONS

DEMO

14

USAGE

15

HOW TO START

16

NWListener

NWConnection

NWBrowserNetService

NetServiceBrowser

Foundationframework Networkframework

17

httpsgithubcomAlTavaresCiao

THATrsquoS ITAlexandre Tavares

alexandretavaresstrvcom

QUESTIONS

USAGE

15

HOW TO START

16

NWListener

NWConnection

NWBrowserNetService

NetServiceBrowser

Foundationframework Networkframework

17

httpsgithubcomAlTavaresCiao

THATrsquoS ITAlexandre Tavares

alexandretavaresstrvcom

QUESTIONS

HOW TO START

16

NWListener

NWConnection

NWBrowserNetService

NetServiceBrowser

Foundationframework Networkframework

17

httpsgithubcomAlTavaresCiao

THATrsquoS ITAlexandre Tavares

alexandretavaresstrvcom

QUESTIONS

17

httpsgithubcomAlTavaresCiao

THATrsquoS ITAlexandre Tavares

alexandretavaresstrvcom

QUESTIONS

THATrsquoS ITAlexandre Tavares

alexandretavaresstrvcom

QUESTIONS

QUESTIONS

top related