Ecobee thermostat can’t connect to servers
-
@stephenw10
I try to not reboot pfSense or modem if I don't have to. I honestly haven't done that in troubleshooting since IP changes brings the connection back up or using an internet not through pfSense restores it too. The reboot the other day wasn't intended. -
Ah so it could be that rebooting pfSense allows it to reconnect every time. That would certainly point at a pf problem. Especially since clearing the states does not. I guess confirm that next then if you're able.
-
@stephenw10
I rebooted the pfSense again this morning. And it didn't restore the ecobee. -
@ezhawk if they are sending you a fin,ack - not sure how you think this could have anything to do with pfsense.. For whatever reason they are not wanting to talk to your device, maybe the public IP? But if they send you fin,ack - that is not something pfsense has control over.
-
@johnpoz pretty easy. when the connection is behind a Cisco device it connects just fine and stays connected for the multiple months i had it connected.. when it is behind the pfSense it can't connect or loses connectivity within days and won't ever restore.
Common sense is the only thing that is different between the two is the introduction of the pfSense. There is something with the pfSense that is preventing connectivity.
-
@ezhawk so your public IP is the same? How is it preventing connectivity - in your capture they send you a fin,ack.. This not preventing connectivity..
Pfsense not sending on something would be preventing connectivity - but if your talking to the device and they send you a fin,ack - they are saying they don't want to talk to you any more.
-
@ezhawk is there a way to provoke a connection to the Ecobee server on purpose, something that could be tried while on the Cisco and once while on pfSense (when it's not working). Capture both traffics and see what the difference is?
Maybe the Cisco router prevented the Ecobee from e.g. making too many connection in a short time and pfSense doesn't.
-
@johnpoz
Here we go again. Let's rehash everything in this thread already
Ecobee behind pfSense doesn't work. No server connectivity. I spoof my WAN mac to get a new IP. Connection works for 1-14 days and then connection fails and it will never restore. We have done pcaps, both wan and lan side. When ecobee is connected to Cisco it will remain connected for MONTHS, no drops and no issues. put traffic back on the pfSense and will work for 1-14 days before dropping again and will NOT reconnect. I've gone through the mac spoofing no less than 6 times and it has behaved the same every single time. If it were the WAN IP getting black listed, explain why it only gets black listed when connected to pfSense and never gets black listed connected to Cisco?Pretty clear cut the introduction of the pfSense is the change that causes the failure.
If you can tell me why when my internet path is 100% the same from Cisco or the pfSense and the connection ONLY fails on pfSense that the issue is not the pfSense I'm all ears. But I don't see any logic that can point to anything but the pfSense.
@patient0
i only introduced the Cisco after having to do repeated IP changes on the pfSense to restore connectivity. so, instead of always changing IPs i stood up a second egress device to specifically send the ecobee traffic around the pfSense so I can keep connection working. I also did it as a PoC to show the pfSense is the source of the problem. -
@ezhawk said in Ecobee thermostat can’t connect to servers:
i only introduced the Cisco after having to do repeated IP changes...
I understand and I read through this thread. I understand or assume that it is frustrating.
Different router OS's behave different, maybe one has a fix for something that another hasn't. Just to be clear, I don't doubt that pfSense makes Ecobee behave as it is. If stephenw10 or johnpoz can't find the source with package capture, it has to be a sneaky issue/bug.Since it seems complicated to find the source of the issue, trying to replicate a defined situation where it works on device A but not device B seemed an approach worth considering (at least for software projects that's what you would do).
Another thing I'd try is sending a support request to Ecobee to clarify if they rate-limit or block your IP and if yes what the reason could be.
-
@patient0 said in Ecobee thermostat can’t connect to servers:
Since it seems complicated to find the source of the issue, trying to replicate a defined situation where it works on device A but not device B seemed an approach worth considering (at least for software projects that's what you would do).
This is exactly what I have. I have the Cisco and pfSense both up. Right now, I send traffic to Cisco everything works no issues, I send traffic to pfSense and it is failure. I have a very defined situation that is repeatable and illustrates the issues.
-
@ezhawk said in Ecobee thermostat can’t connect to servers:
I have a very defined situation that is repeatable and illustrates the issues.
:) that is of course not what I meant. It has to be an action that can be triggered behind the routers.
If someone tell me that they run a picture through a filter in Adobe Photoshop and the same picture through a corresponding filter in GIMP, but the filter in GIMP doesn't behave the way you want. Here the picture is a clearly defined data source. Something similar in form of an Ecobee action that triggers a defined package flow would help, that is what I had in mind.
-
@ezhawk Might help to identify what the Cisco router is?
Reaching out to ecobee is not a bad idea either. If the device has not been rebooted, they should be able to see past logs which may contain insights into the issue.
It's very important you provide them with incident time stamps. Asking for escalation to tier 2 may also help as this issue is indeed quite bizarre.
Technically both pfsense and other devices adhere to rfc standards, but im confident there's nuanced differences in implementation.
For those of us here it would also help to have a clear topology of your network hardware. From the above, im not clear if pfsense is out of the loop entirely when the cisco device is present.
-
@GPz1100
Really simple but this is Topo. I have to reboot the Ecobee to get it to switch paths. Same internal subnet, but I use a different default gateway for the IP on the Cisco to send traffic out via the Cisco. All my network traffic other than the Ecobee goes through pfSense and I don't have any issues with anything.Both Layer 3's links are Layer 3 on the pfSense and Cisco, so it isn't something like a loop taking place. The Cisco was only added after months of trying to figure out why the pfSense is blocking.
-
@ezhawk so where you say "modem" you actually mean gateway.. Because if that was an actual modem.. Traffic out of pfsense to the internet would have a different public IP then traffic flowing through the cisco.
Either your natting these connections at your "modem" (so its not a modem) so you only have 1 public IP seen by the internet or your isp is providing you with multiple public IPs.
-
@johnpoz
It is just a dumb standard ISP D3.1 cable modem that is baselined so it does nothing. Both my pfSense and Cisco have their OWN UNIQUE public IP. NAT is taking place on the pfSense and Cisco respectively. -
@ezhawk said in Ecobee thermostat can’t connect to servers:
Both my pfSense and Cisco have their OWN UNIQUE public IP
And that was my point a while back.. But you dismissed it saying the path is the same - when clearly its NOT!
If you can tell me why when my internet path is 100% the same from Cisco or the pfSense
Clearly that is not the case if your public IP that ecobee sees is different..
My point is ecobee server(s) sending you a fin,ack has nothing to do with what pfsense could be or not doing to the traffic.. They clearly said hey buddy I am done with this conversation.
-
@johnpoz If you want to blame the IP, then you need to explain to me why when the Ecobee goes through the Cisco it can work perfectly for months at a time without a single issue on the same IP. But when traffic for the Ecobee goes out via the pfSense the bast case is it'll work for 1-14 days then just stop. Traffic will restore if I spoof a new mac on the pfSense to get a new IP and then it'll work for 1-14 days and then stop working again. 100% repeatable.
Please explain in specific detail how the specific digits of the IP address that are different between the pfSense and the Cisco are causing traffic to fail. Even more so, the IP the Cisco gets is literally 1 digit away from the one the pfSense has.
Please explain how because IP x is on the pfSense it has issues working with this specific thing while IP y on the Cisco doesn't. And before you tell me they are in different subnets, one is the .128 and one is the .129 in a /22.
Here, I'll even give you what we all know Ecobee would say to start with. "Your connection works on the Cisco router, but doesn't on the pfSense? That seems to be an issue with how the pfSense is processing traffic since you can connect via Cisco and never have an issue. We would recommend working with pfSense. If you couldn't connect with both routers then it could be a device or server issue."
If the convo between Ecobee Servers and my Ecobee can complete without issue on the Cisco. Why does it fail on the pfSense? The communication from my Ecobee to the servers goes to the same destination every single time. If it is the source IP, then why when the source is the Cisco router does it work for months. but if the source is from the pfSense it'll work initially, then fail and won't be able to restore? I've had multiple diff IPs on the pfSense over time via spoofing a new mac. It is the same thing over and over and over. Works for a bit then fails. I've never not once had communication fail on the Cisco and my Cisco has had the same public IP the entire time.
No matter what I do, the only thing that can get the connection to fail is the introduction of the pfSense into the routing path.
There is something that gets completely torn down on the pfSense when a new public IP is received but after a bit becomes stale or hung and isn't getting updated properly. Or the pfSense itself is doing something to the traffic. that is causing it to fail.
-
out of curiosity have you checked with ecobee ?
"ecobee has determined that a very small percentage of Smart Thermostats may experience difficulty connecting to our servers, leading to disconnection issues. If your thermostat has exhibited this problem, please use the serial number checker below to see if your device qualifies for our Connectivity Support Program."
maybe you have and I just missed the reference or mention in this thread
here is the link to check your serial number
https://support.ecobee.com/s/esp/smart-thermostat-connectivity-issues
-
@jrey said in Ecobee thermostat can’t connect to servers:
https://support.ecobee.com/s/esp/smart-thermostat-connectivity-issues
That's no longer a thing anymore according to Ecobee.
And to no one's surprise, Ecobee says it is a problem with the pfSense since everything works fine when the pfSense is bypassed. They could see everything just fine until the pfSense was put in line.
-
@ezhawk said in Ecobee thermostat can’t connect to servers:
And to no one's surprise, Ecobee says it is a problem with the pfSense
Just to be clear (and I leave it after that), my suggestion to contact support was not to blame them but get help from them, getting information about connection made by pfSense and if Ecobee was blocking that connection at some point. I suspect you won't get that info in a chat from a 1st level support.
Your package capture shows a 'Client Hello' from the Ecobee device when connecting to idt.ecobee.com and in a normal conversation, the answer would be a 'Server Hello' from the Ecobee server. But instead Ecobee ends the connection (the connection to home-fw.ecobee.com get a 'Server Hello', seems successful).