Closed palainp closed 1 year ago
Thank you for your report.
I found the relevant code: https://github.com/roburio/albatross/blob/9fee7f7c082c766fd7505dee522d026d76987e1c/src/vmm_lwt.ml#L15-L23
The documentation for Unix.inet_addr_any
says
A special IPv4 address, for use only with [bind], representing
all the Internet addresses that the host machine possesses.
So it seems we should maybe use Unix.inet6_addr_any
instead. In the meantime I think you should be able to use systemd socket activation (if you use systemd). You should have a sample .service and .socket file installed in /usr/share/doc/albatross/ I believe.
It's a good point that it is currently not possible to specify what address to listen on.
@reynir thanks for the fix, indeed a command line option to specify the listen address for the tls endpoint would be nice.
Thanks for your quick fix!
Fixed by #144 #147
Hi, thanks for your work on albatross, it's very helpful! I've not updated albatross for a while until last week. I have now an issue starting albatross-tls-endpoint 1.5.3 (the daemon is started with systemd):
This was the commands I used to have but something may have changed recently. With
strace
I have the following additional information:The manual page for
bind
states thatEINVAL
is returned when the port is already binded (I checked that withnetstat -talp
and it's not), oraddrlen is wrong, or addr is not a valid address for this ocket's domain.
. Theaddrlen
is 16 which suggest thatbind
try to use an IPv6 whereassin_addr
is an IPv4. Is there a way to specify which IP type address I want to use?