Open lingfish opened 6 years ago
Seems that someone likes the idea to be more specific than expected and dropped IPv6 support:
No need to specify address family here?
We would need IPv6 support to the UDP receiver too.
Is this a more wide spread issue??
https://github.com/logstash-plugins/logstash-input-udp/pull/31 https://github.com/ashangit/logstash-codec-sflow/issues/10 << i posted that one I also have issues with netflow-codec but there is no ticket for that, dont think cisco fully supports netflow with ipv6
This appears to be the same issue as jruby/jruby#5112. CRuby also raises an exception if you do not explicitly specify AF_INET6
in the UDPSocket
constructor, but we raise the wrong exception (we allow a Java exception to bubble out). I'm looking into a remedy.
Let me put that differently: the error that's going into logs is related to jruby/jruby#5112. The actual bug/feature here for logstash is outside my expertise :-)
I have "fixed" jruby/jruby#5112 and the resulting error now matches CRuby (at least type...message is different).
Is this fixed with logstash 6.2.4?
for me it did solve it but im not using this particular input... https://discuss.elastic.co/t/logstash-input-fails-listening-ipv6/122114
i had simply commented here because more than one plugin were being affected so thought it was more wide spread.
thanks! dave
I'm running 6.4.2 and it's still broken.
Although I've just discovered I can use the generic udp input which does do IPv6 correctly. :-)
6.5.4 seems to still be broken as well.
Hi,
Checked in 6.8. Still seems like issue exists. Can someone help please. We are planning to use 6.5.4, and hitting the issue. Basically syslog input starts up on IPv6 tcp port and IPv4 UDP port. It does not start on IPv6 UDP port and IPv4 TCP port. Input looks like this: input { tcp { port => 9514 type => syslog codec => plain { charset => "ISO-8859-1" } } udp { port => 9514 type => syslog codec => plain { charset => "ISO-8859-1" } } }
netstat shows : [logstash]$ sudo netstat -anp | grep 9514 tcp6 0 0 :::9514 ::: LISTEN 28419/java udp 0 0 0.0.0.0:9514 0.0.0.0: 28419/java
How can we get over the issue.?
Issue present in 7.2.0 as well.
Specifying host => '::'
explicitly fails:
[INFO ] 2019-07-06 11:50:05.884 [Ruby-0-Thread-13: /usr/share/logstash/logstash-core/lib/logstash/java_pipeline.rb:309] syslog - Starting syslog udp listener {:address=>":::5000"}
[WARN ] 2019-07-06 11:50:05.885 [Ruby-0-Thread-13: /usr/share/logstash/logstash-core/lib/logstash/java_pipeline.rb:309] syslog - syslog listener died {:protocol=>:udp, :address=>":::5000", :exception=>#<SocketError: bind: unsupported address "::" for protocol family INET>, :backtrace=>["org/jruby/ext/socket/RubyUDPSocket.java:197:in `bind'", "/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-input-syslog-3.4.1/lib/logstash/inputs/syslog.rb:149:in `udp_listener'", "/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-input-syslog-3.4.1/lib/logstash/inputs/syslog.rb:130:in `server'", "/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-input-syslog-3.4.1/lib/logstash/inputs/syslog.rb:110:in `block in run'"]}
https://github.com/logstash-plugins/logstash-input-syslog/pull/55 shows a quick and dirty fix, I don't expect it can be accepted as there should be an elegant way to determine IP address family, also I guess people need support to listen on both IPv4 and IPv6 though it's not case for me.
Im a bit confused that this issue is still open. Wasn't it fixed with #56 ?
It is not working in the latest version of Logstash 8. Is it still open?
Version: logstash 6.0.0, logstash-input-syslog-3.2.2
Operating System: Debian 9.2
Java version: openjdk version "1.8.0_151"
Config File (if you have sensitive info, please remove it):
Steps to Reproduce: run as
/usr/share/logstash/bin/logstash -f /etc/logstash/testing/syslog.conf --path.data /tmp/blah --path.settings /etc/logstash -l /tmp/log --verbose
Running it this was results in some strange bindings:
As you can see, no UDP listeners on IPv6. I've tried various combinations of specifying
host
, and the Java options like-Djava.net.preferIPv6Stack=true
.Logs are clean with the default wildcard address:
Yet the same bindings as above occur.
Specifically, when I force any form of IPv6 address, I then see:
This loops. I think the interesting part there is
:exception=>java.nio.channels.UnsupportedAddressTypeException