#751418 irssiproxy does not work with bindv6only = 1

Package:
irssi
Source:
irssi
Description:
terminal based IRC client
Submitter:
Thijs Kinkhorst
Date:
2014-07-08 13:18:15 UTC
Severity:
normal
#751418#5
Date:
2014-06-12 11:31:13 UTC
From:
To:
Hi,

When using irssiproxy with kernel setting bindv6only = 1 (which is the
default in Debain), irssi only binds to IPv6 and no longer accepts
IPv4 connections to the proxy. The only reason I found to fix this
is to disable bindv6only system-wide which is obviously undesirable.


Cheers,
Thijs

#751418#10
Date:
2014-07-08 12:50:10 UTC
From:
To:
* Thijs Kinkhorst <thijs@debian.org> [2014-06-12 13:31:13 CEST]:

 Do I misunderstand something here?  The kernel says that things should
bind to v6 only, but you want it to ignore that and bind to v4, too?  Or
do I misinterpret that kernel setting?  Can you be more specific?
Either one wants stuff to bindv6only or one doesn't, I am uncertain why
an application should ignore the kernel preference here?

 Thanks for enlightning me,
Rhonda

#751418#15
Date:
2014-07-08 13:17:00 UTC
From:
To:
irssiproxy is only reachable on IPv6, not IPv4.", so it's not something I
explicitly chose to change.

The reason is that Debian (as do other OS'es BTW) sets the kernel option
bindv6only to true. All the background can be read in this post by Marco:
https://lists.debian.org/debian-devel/2009/10/msg00541.html
but it boils down that if you would bind an AF_INET6 listening socket to
in your application, you used to get IPv4 "for free". With the setting
changed, the kernel behaves differently and the application needs to
explicitly create the AF_INET socket for IPv4 traffic. Nearly all
applications do this, it seems irssiproxy still needs to be changed to
account for this.


Cheers,
Thijs