<html dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" id="owaParaStyle"></style>
</head>
<body fpstyle="1" ocsi="0">
<div style="direction: ltr;font-family: Tahoma;color: #000000;font-size: 10pt;">
<div style="font-family: Times New Roman; color: #000000; font-size: 16px">
<div id="divRpF23909" style="direction: ltr;"><span style="font-family: Tahoma; font-size: 10pt;">Hi,</span></div>
<div>
<div style="direction:ltr; font-family:Tahoma; color:#000000; font-size:10pt">
<div style="font-family:Times New Roman; color:#000000; font-size:16px">
<div>
<div style="direction:ltr; font-family:Tahoma; color:#000000; font-size:10pt">
<div style="font-family:Times New Roman; color:#000000; font-size:16px">
<div>
<div style="direction:ltr; font-family:Tahoma; color:#000000; font-size:10pt">
<div><br>
</div>
<div>We are using Juniper routers in-front of our anycast dns nodes in some locations.</div>
<div><br>
</div>
<div>Noticed if the client set the ECN flags in a TCP query the router sends the threeway handshake to one node, but the data to a second node which correctly sends a RESET.</div>
<div><br>
</div>
<div>Looks like it possibly could affect others using juniper in the same way for anycast.</div>
<div><br>
</div>
<div>To reproduce:</div>
<div><br>
</div>
<div>Enable ECN, on linux</div>
<div><br>
</div>
<div>echo '1' > /proc/sys/net/ipv4/tcp_ecn</div>
<div><br>
</div>
<div>dig @nameserver zone +tcp </div>
<div><br>
</div>
<div>ie (random root server that looks to be affected)</div>
<div><br>
</div>
<div>
<div style="font-family:Calibri,sans-serif; font-size:14px">dig @b.root-servers.net . soa +tcp</div>
<div style="font-size:13.3333px"><font face="Calibri, sans-serif"><span style="font-size:14px">;; communications error to 2001:500:200::b#53: connection reset</span></font></div>
</div>
<div style="font-size:13.3333px"><font face="Calibri, sans-serif"><span style="font-size:14px"><br>
</span></font></div>
<div style="font-size:13.3333px"><font face="Calibri, sans-serif"><span style="font-size:14px">We've got a bug raised with Juniper at the moment, looks pretty much identical to this, but were using M series and latest 15 code didn't fix.</span></font></div>
<div style="font-size:13.3333px"><font face="Calibri, sans-serif"><span style="font-size:14px"><br>
</span></font></div>
<div style=""><a href="UrlBlockedError.aspx" style="font-size:10pt" target="_blank">https://forums.juniper.net/t5/SRX-Services-Gateway/Broken-ECMP-ipv6-with-SRX1500-in-paketmode/m-p/305636</a></div>
<div style=""><br>
</div>
<div style="">Explicitly disabling ECN on the DNS nodes themselves, from the default of 2 on RHEL, (respond with ECN if client requests it) resolves the issues as they no longer nogotiate ECN and the data flows to the same node as the threeway handshake.</div>
<div style=""><br>
</div>
<div style="">Fix:</div>
<div style="">echo '0' <span style="font-size: 13.3333px;">> /proc/sys/net/ipv4/tcp_ecn</span></div>
<div><span style="font-size: 13.3333px;"><br>
</span></div>
<div style="">Anyone else seen this?</div>
<div style=""><br>
</div>
<div style="font-size:13.3333px"><font face="Calibri, sans-serif"><span style="font-size:14px">Ben</span></font></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>