I've got a Dell Thunderbolt dock (TB16) on my Dell XPS 13 notebook. When I use the ethernet connection on my dock, local websites (192.168.1.x, like web interfaces of my printer, Pi-Hole, ZTE H369A router) don't work properly because of corrupted data. Printing on my Samsung network printer (M2070) doesn't work; it prints just a couple of random characters instead.
When I set the speed of the wired connection to 10 or 100 Mb/s it works fine, but when I set Link negotiation
to Automatic or Ignore or when I set Speed to 1 or 10Gb/s, I get corrupted data.
When I go to a local webpage, I get Uncaught SyntaxError: Invalid or unexpected token
or Uncaught SyntaxError: Unexpected token ']'
in the console. The response (in this case jquery-1.7.2.min.js) is malformed:
unction(FHH@4@F��C��|9S�7E4!�@�ˏ
��o��p��6<R�'?�~���x
6uM��k����gk.length>1&&!R[a]?f.unique(e):e,(this.length>1||N.test(d))&&M.test(a)&&(e=e.reverse());return this.pushStack(e,a,P.call(arguments).join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var V="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/<tbody/i,_=/<|&#?\w+;/,ba=/<(?:script|style)/i,bb=/<(?:script|object|embed|option|style)/i,bc=new RegExp("<(?:"+V+")[\\s/>]","i"),bd=/checked\s*(?:[^=]|=\s*.checked.)/i,be=/\/(java|ecma)script/i,bf=/^\s*<!(?:\[CDATA\[|\-\-)/,bg={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]},bh=U(c);bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div<div>","</div>"]),f.fn.extend({text:function(a){return f.access(this,function(a){return a===b?f.text(this):this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a))},null,a,arguments.length)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=f.isFunction(a);return this.each(function(c){f(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f
function(a){return f.dir(a,"nextSibling")},prevAll:function(FHH@4@F��C��|9S�7E4!�@�ˏ
��o��p��6<R�'?�~���x
Other (non-local) websites are working fine and using another ethernet adapter (or Wi-Fi) is working fine too. Even my router interface (192.168.1.254) is working fine when using a reverse proxy (router.mypersonaldomain.example). That might be because my internet connection is just 65 Mb/s, but I'm not sure if that's the reason.
I'm having this problem for a couple of years now and updating the firmware drivers or Ubuntu didn't and I'm curious what the exact problem is. The problem also exists when using a Ubuntu Live USB and also on both Chrome and Firefox.
How do I find out what the exact problem is? Before I'm looking into solutions, I want to know what the technical issue is.
There were known issues with earlier firmware on these devices - update firmware with
fwupdmgr udpate --force && fwupdmgr upgrade
- you may need to run this multiple times. I had to run the firmware update tool on a Windows laptop to get it to the latest version in the end.Also, have a look at
ip -s -s link show enx<mac_address>
- CRC/errors could be a result of bad cable/switch - I had an corruption issue which turned out to be a switch, and after opening it up, some of the capacitors were visibly swollen.