New issue
Advanced search Search tips

Issue 859359 link

Starred by 2 users

Issue metadata

Status: Available
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 3
Type: Bug-Regression



Sign in to add a comment

Chromium flags not responding. mDNS cannot be shut off

Reported by manuel.o...@gmail.com, Jul 1

Issue description

UserAgent: 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:
 
new.jpg
86.7 KB View Download
Labels: Needs-Milestone Needs-Bisect
Components: -UI Internals>Network>DNS
Labels: Triaged-ET
Adding component Internals>Network>DNS to look into this issue.

Could you please look into this issue and help in further investigation.

Thanks !
Components: Services>CloudPrint
I believe mDNS is only used by cloud print.
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.
Components: Internals>Cast
Thanks!  Adding the Cast component.
Labels: TE-NeedsTriageHelp
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 .!
Labels: Needs-Feedback
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?
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?
ss.jpg
31.3 KB View Download
Project Member

Comment 9 by sheriffbot@chromium.org, Jul 9

Cc: imch...@chromium.org
Labels: -Needs-Feedback
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
Labels: Needs-Feedback
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.
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?
Project Member

Comment 12 by sheriffbot@chromium.org, Jul 10

Labels: -Needs-Feedback
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
I should also mention I was using --log-net-log=/some_path/some_file_name.json --net-log-capture-mode=IncludeSocketBytes.
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.
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. 
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?
mydump1.json
5.1 MB View Download
3.jpeg
50.2 KB View Download
continued.
mydump2.json
6.7 MB View Download
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.
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.
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 
Labels: -Pri-2 Pri-3
Status: Assigned (was: Unconfirmed)
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??
Labels: Needs-Feedback
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?
Components: -Internals>Network>DNS
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.
Cc: powerb@chromium.org
Status: WontFix (was: Assigned)
- 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.
Status: Available (was: WontFix)
Actually I will keep this bug open until the feature switches behave correctly.
Cc: -imch...@chromium.org

Sign in to add a comment