Issue metadata
Sign in to add a comment
|
Chromium flags not responding. mDNS cannot be shut off
Reported by
manuel.o...@gmail.com,
Jul 1
|
||||||||||||||||||||
Issue descriptionUserAgent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.117 Safari/537.36 Steps to reproduce the problem: 1. install chromium on Debian 2. disable all flags under chrome://flags 3. disable all mDNS settings under chrome://settings 4. run ss or netstat with tulnp flags and notice 3 listening ports on port 5353. 5. occasionally an additional port is opened on the local IP address and random high port (above 40000). When this happens, 2 more IPs with 172.16.x.x and random high ports are opened as well. What is the expected behavior? I would expect chrome://flags and chrome://settings to actually turn off unwanted features. What went wrong? mDNS does not turn off for whatever feature is needed. Did this work before? Yes not sure the specific version but it was in the 50's Chrome version: 66.0.3359.117 Channel: stable OS Version: 4.9.0-6-amd64 #1 SMP Debian 4.9.88-1+deb9u1 (2018-05-07) Flash Version:
,
Jul 2
Adding component Internals>Network>DNS to look into this issue. Could you please look into this issue and help in further investigation. Thanks !
,
Jul 2
I believe mDNS is only used by cloud print.
,
Jul 2
I'm not a chromium developer but I believe mDNS is also used for Chromecast functions. Previously you could turn it off by disabling media router and device discovery in chrome://flags. With older versions you could disable it in chrome://settings by disabling cloud printer settings. Now it doesn't turn off at all.
,
Jul 3
Thanks! Adding the Cast component.
,
Jul 5
The issue seems to be out of TE-scope as it is related to mDNS settings under chrome://settings and running ss or netstat with tulnp flags. Hence adding TE-NeedsTriageHelp label for futher investigation. Thanks .!
,
Jul 9
Hi Manuel, for Media Router you can disable mdns traffic by disabling the load-media-router-component-extension flag and also pass in --disable-features=EnableCastDiscovery in the command line. We are moving cast discovery away from the media router extension hence the latter flag. Could you give that a try?
,
Jul 9
Disabling the flag does not work at all. The command line switch gets rid of the 5353 port but does not get rid of all of the listening ports. I'm testing this on 2 different machines one running Debian 9 and another on Xubuntu 18. On the xubuntu machine the command line switch disables the open port on 5353 but it still opens a port for about 5 seconds after the application starts. On Debian 9 the command line switch does turn off the open port on 5353 but it still opens 3 other ports on 2 different IP addresses and one on the local IP. What exactly is opening those ports on the 172.16.x.x addresses and how do I turn them off?
,
Jul 9
Thank you for providing more feedback. Adding the requester to the cc list. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Jul 10
Manuel: the instructions I gave you only disables multicast traffic initiated from Media Router (the port 5353 one). I can't tell for sure about the other listening random ports, sorry. Would you be able to capture a NetLog on startup to see what's going through those ports? See https://www.chromium.org/for-testers/providing-network-details and "Advanced: Logging on startup". Please add --net-log-capture-mode=IncludeSocketBytes. Thanks.
,
Jul 10
If I search the NetLog should I be able to find those IP addresses or is it possible they byte encoded? As I go through the log I cant find the IP addresses listed. And does the capture mode IncludeSocketBytes log credentials and cookies? If it does is there a way to post it so just that part of the post is not public?
,
Jul 10
Thank you for providing more feedback. Adding the requester to the cc list. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Jul 10
I should also mention I was using --log-net-log=/some_path/some_file_name.json --net-log-capture-mode=IncludeSocketBytes.
,
Jul 10
Is there a man file with all these updated command line switches somewhere? The man file that comes with Debian does not include all these undocumented features. I mean dont get me wrong I like things that just work, but I also want to disable all these features that are no use to me.
,
Jul 11
Are you using the import feature in chrome://net-internals? You can use that to read the logs and filter by search terms such as IP address. Re: command line switch. The official source points to https://peter.sh/experiments/chromium-command-line-switches/ which is quite comprehensive.
,
Jul 11
Maybe Im missing something but I cannot find where chromium is opening those ports. So to try to eliminate my ignorance I ran 2 tests. The first test has mDNS turned on (mydump1.json & 3.jpg). The second test has mDNS turned off (mydump2.json & 4.jpg). I do see a lot of http requests to some odd server names is that normal?
,
Jul 11
continued.
,
Jul 11
Ah, it's probably because the code that opens these ports does not integrate with NetLog. That they show up with mDNS traffic disabled seem to suggest they're not part of mDNS though. Do you know what these local IP addresses correspond to? I would suggest using Wireshark to try to capture the network traffic going through these ports to narrow down what they could come from.
,
Jul 11
The 5353 ports only open if I don't use the command line switch. Can you not replicate this issue? I started searching the source code and I see some code that mentions 172 networks in WebRTC functions.
,
Jul 14
I think I found the issue but do not know how to turn it off. Seem SSDP is the culprit. if I DROP all outgoing IP packets to 239.255.255.250 the ports dont open. How do I disable SSDP in Chromium? Ive checked the link you gave previously but it doesnt seem to list SSDP as a function to disable. Should also mention this was a bug that was claimed to have been fixed. https://bugs.chromium.org/p/chromium/issues/detail?id=665572
,
Jul 17
Derek, can you please verify and follow up on this? Moving to P3 as it's not time critical. Could this be a side effect of moving DIAL from component extension to native browser code??
,
Jul 24
Yeah the DIAL discovery logic now lives in the browser, so disabling the MR extension won't be sufficient. The only other way is to disable Media Router through enterprise policy by adding a json file in /etc/opt/chrome/policies/managed/ containing the following:
{
"EnableMediaRouter": false
}
See https://www.chromium.org/administrators/linux-quick-start for details. Manuel can you see if that would work for you?
,
Jul 24
,
Jul 26
That does work. Any chance you could add a radio button in settings to disable? It was bad enough to disable settings by having to search through chrome://flags. It would be nice to disable settings without having to create an enterprise policy.
,
Jul 30
- In the future there will be feature switches to control on/off for DIAL and Cast MRPs, as opposed to Media Router in its entirety - We currently don't have plans (at least in the short/medium term) to expose Media Router related items to chrome://settings, but adding powerb@ for consideration in the future.
,
Jul 30
Actually I will keep this bug open until the feature switches behave correctly.
,
Nov 7
|
|||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||
Comment 1 by vamshi.kommuri@chromium.org
, Jul 2