iobroker-community-adapters / ioBroker.radar2

ioBroker adapter to scan for IP or bluetooth devices and some other
MIT License
11 stars 10 forks source link

Synology Docker - Unable to start the adapter / make dhcp optional to allow local dhcp server #133

Open vo5tr0 opened 1 year ago

vo5tr0 commented 1 year ago

I am unable to start the adapter on my Synology NAS and Docker It stops with error Exception-Code: EADDRINUSE: bind EADDRINUSE 0.0.0.0:67

Capabilities are set on the docker container (net_admin, net_raw, net_bind) --> did not solve the problem Capabilities set using the commands provided in the readme file --> did not solve the problem iobroker fix --> did not solve the problem tried setting the interface in adapter settings with "--interface=ovs_eth0 -lgq --retry=5 --timeout=400" --> did not solve the problem

arp-scan -lgq --retry=7 --interface=ovs_eth0 executed in the docker console is successful.

is there anything else I could do?

Here is the log output from iobroker:

host.buanet-iobroker1 2023-03-10 10:31:25.468 info Restart adapter system.adapter.radar2.0 because enabled
host.buanet-iobroker1 2023-03-10 10:31:25.467 error instance system.adapter.radar2.0 terminated with code 6 (UNCAUGHT_EXCEPTION)
radar2.0 2023-03-10 10:31:25.361 warn radar initialization finished with error TypeError: Cannot read property 'push' of nullat main (/opt/iobroker/node_modules/iobroker.radar2/radar2.js:764:29)at processTicksAndRejections (internal/process/task_queues.js:95:5)at async IobAdapter.onReady (/opt/iobroker/node_modules/iobroker.radar2/fjadapter-core.js:212:3), will stop adapter!
radar2.0 2023-03-10 10:31:25.357 info will scan UWZ with code UWZDE73666 every 120 minutes
radar2.0 2023-03-10 10:31:25.233 info Adapter identified macs: (dc:39:6f:ef:c2:dd), ips: (192.168.178.1), bts LE: (), bts norm: ()
radar2.0 2023-03-10 10:31:25.041 info Init item FritzBox with {name: 'FritzBox',bluetooth: [],enabled: -1,id: 'FritzBox',type: 'IP',rip: [ '192.168.178.1' ],hasMAC: [ 'dc:39:6f:ef:c2:dd' ]}
radar2.0 2023-03-10 10:31:24.962 info debug: created State radar2.0.info.connection
radar2.0 2023-03-10 10:31:24.943 info debug: Will 'not save' unknown BT devices and will 'not save' unknown IP devices!
radar2.0 2023-03-10 10:31:24.942 info debug: radar2 set to scan every 30 seconds and printers every 720 minutes.
radar2.0 2023-03-10 10:31:24.896 warn Terminated (UNCAUGHT_EXCEPTION): Without reason
radar2.0 2023-03-10 10:31:24.895 info terminating
radar2.0 2023-03-10 10:31:24.894 info Adapter disconnected and stopped with dostop(null) and callback(true)
radar2.0 2023-03-10 10:31:24.893 info Unload adapter now with null
radar2.0 2023-03-10 10:31:24.887 warn Uncaught Exception: bind EADDRINUSE 0.0.0.0:67
radar2.0 2023-03-10 10:31:24.885 error Exception-Code: EADDRINUSE: bind EADDRINUSE 0.0.0.0:67
radar2.0 2023-03-10 10:31:24.885 error Error: bind EADDRINUSE 0.0.0.0:67 at dgram.js:357:20 at processTicksAndRejections (internal/process/task_queues.js:83:21)
radar2.0 2023-03-10 10:31:24.884 error uncaught exception: bind EADDRINUSE 0.0.0.0:67
radar2.0 2023-03-10 10:31:24.872 info debug: use known IP list: [ '192.168.178.10', '192.168.178.10' ]
radar2.0 2023-03-10 10:31:24.871 info debug: use known BT list: [ '01:12:23:34:45:56' ]
radar2.0 2023-03-10 10:31:24.868 info debug: radar2 set to flag items away if they are not seen for 3 minutes
radar2.0 2023-03-10 10:31:24.669 info debug: started #3 hciconfig hci0 up
radar2.0 2023-03-10 10:31:24.548 info debug: started #2 hciconfig hci0 down
radar2.0 2023-03-10 10:31:24.536 info Will run hcitool-mode and not noble on device []!
radar2.0 2023-03-10 10:31:24.503 info debug: started #1 hcitool dev
radar2.0 2023-03-10 10:31:24.480 info Will use l2Ping for BT scans.
radar2.0 2023-03-10 10:31:24.468 info radar2 initialization started...
radar2.0 2023-03-10 10:31:24.344 info starting. Version 2.0.3 in /opt/iobroker/node_modules/iobroker.radar2, node: v14.19.2, js-controller: 4.0.24

iobroker info: Platform : docker
os : linux
Architecture : x64
CPUs : 4
Speed : 1501 MHz
Model : Intel(R) Celeron(R) CPU J3455 @ 1.50GHz
RAM : 7.6 GB
System uptime : 2d. 13:32:23
Node.js : v14.19.2
time : 1678441452057
timeOffset : -60
adapters count : 470
NPM : v6.14.17

Apollon77 commented 1 year ago

Then something else altready use port 67. You need to find which process this is

vo5tr0 commented 1 year ago

There is a DHCP Server running on my NAS. So there is no way to run that adapter then? I guess this port is used to listen for new devices or something? Isn't there any way to just disable that function?

mcm1957 commented 1 year ago

According to description:

Listening to dhcp messages which announces new devices coming to the network.

The adapter will need to get access to dhcp port. So currently, you cannot run a dhcp server at the same system as this adapter.

I will tag this as a feature request. One could evaluate to make either dhcp optional via config (or detect the blocked port and ignore dhcp messeges.) This might reduce functionality, but maybe this would be acceptable.