I am testing an application that uses WebRTC to transmit video from a server to a client application running in Google Chrome ( 74.0.3729.157). I am testing the Chrome flag Anonymize local IPs exposed by WebRTC to make sure it works with our application. Both the client and server are on the same LAN. The application I am testing uses multiple WebRTC connections concurrently. With the flag disabled everything works fine, the connection gets established using the LAN IP addresses. When I enable the flag some of the client connections choose an mDNS hostname instead of a local IP address as expected. However, some of the other connections try to use STUN to set up the connection to the server. The STUN connection does not appear to be successful and for some reason, WebRTC does not fallback and try to use the mDNS hostname for the connection. Why does chrome try to use STUN when the mDNS hostname would work? Also, why does WebRTC not switch over to mDNS when the STUN connection fails? There may be some race condition because when I connect each session sequentially they always choose the mDNS hostname and never try to use STUN, its only when I try to make a bunch of concurrent connections that some choose to use STUN.