-
Notifications
You must be signed in to change notification settings - Fork 63
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Dasshio script failing when pressing Dash button - IndexError: Layer [ARP] not found #44
Comments
I have the same Problem, with nearly the same setup: Dasshio 0.3.1 in Hass.io supervisor 125 on an Ubuntu 16.04. |
For what it's worth, I have since upgraded to Dasshio 0.3.1 and Hassio supervisor 125 as well, and it still doesn't work for me. I had previously set up another Hassio instance (Which had DNS issues) on Ubuntu 17.10, and Dasshio is working in that setup. My current workaround is to keep Dasshio running on that host, but sending commands to the Ubuntu 16.04 instance (Which works perfectly otherwise) |
I think is because the code has change from the version 0.2.1. I downgrade
and it worked for me as a custom plugin.
…On Wed, 15 Aug 2018, 23:06 The Astropath, ***@***.***> wrote:
For what it's worth, I have since upgraded to Dasshio 0.3.1 and Hassio
supervisor 125 as well, and it still doesn't work for me.
I had previously set up another Hassio instance (Which had DNS issues) on
Ubuntu 17.10, and Dasshio is working in that setup. My current workaround
is to keep Dasshio running on that host, but sending commands to the Ubuntu
16.04 instance (Which works perfectly otherwise)
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#44 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/ACCX7IUcpOY1pyVJJVcsO_bcXKK-UsDRks5uRI1UgaJpZM4VpjQ6>
.
|
I've determined the cause of the problem and half determined a work-around, but not entirely sure how to get it actually working. Let me outline everything that I've determined: By entering the Dasshio container and manually executing the dasshio.py, I was able to determine that the "sniff" function was picking up every packet that was hitting the network interface and not filtering out packets that don't match the specified filter. I was able to find this issue:
Which obviously seems bad (And yes, I verified that I was root, so the lack of permission seemed odd) Further searching to determine why tcpdump might not be working lead me to the following issue: So there's some sort of privilege issue being caused by AppArmor that is preventing tcpdump from being executed in /usr/sbin/ but not in /usr/local/bin/. What I'm not sure about (being a Docker noob) is how to move the tcpdump binary in the container and make that permanent until the issue gets resolved properly. Ideas? |
It took a bit of fiddling, but I've forked the Dasshio repository and gotten things working for me. The only real differences between 0.3.1 and my version is that the add-on generates the Docker image on the fly (instead of using a published image) and moves the tcpdump binary to /usr/bin during creation. I changed some of the add-on text as well just to make it explicitly clear that this is a work-around version, and isn't really a permanent solution. If you're encountering the issue described here, you should be able to add my repository to your Hass.io add-on store, and install the add-on that way. My repository is: I would love to not have to keep my fork up to date, so hopefully a proper fix gets added to the main repository eventually! |
So, looking at the @theastropath workaround it seems easy to add it. I have been running this version in RPI for a long time and now I run it inside an Ubuntu 18 an it working without issue. I am willing to make the workaround suggested but would like to know if any of you found another way of making it work without the Thanks! |
It's working on Ubunut 16.04 and latest hassio without crash. Thank you. |
@danimtb I believe the other (proper) solution would be to figure out how AppArmor needs to be configured to allow tcpdump to run in its current location. That being said, I have absolutely no understanding of how AppArmor really works, so I can't provide much insight. I think just moving tcpdump is the easy/good enough solution. |
I have been experiencing the crashing issue as well so please implement this workaround. Or did you already? I checked the releases page of your github and the other guys fork and they both say Aug was latest but your posts are only 25 days old. Where is your latest code lol am I missing it? |
There were some minor changes (documentation, IIRC) to the base version around when I made the workarounds in my fork. If you are experiencing the "Layer [ARP] not found" crash, I would recommend using my fork for the time being, then switch back to the original version once the workaround has been implemented there. You should be able to just copy the configuration from my version and just dump it into the base version once you need to make the switch. |
I set up Dasshio version 0.3.0 in Hass.io supervisor version 121 on an Ubuntu 16.04 host. When I configure a button and then press it, I get the results below:
The text was updated successfully, but these errors were encountered: