On the same router: SOCKS5 IRC tunnel cannot find a dest, but an IRC Client tunnel can
Using a self-compiled deb
I2P version: 2.5.2-2-1
API version: 0.9.62
Java version: Debian 17.0.11 (OpenJDK Runtime Environment 17.0.11+9-Debian-1deb12u1)
Wrapper version: 3.5.51
Server version: 9.4.50.v20221107
Servlet version: Jasper JSP 2.3 Engine (3.1)
JSTL version: standard-taglib 1.2.5
Platform: Linux amd64 6.8.4-2-pve
Processor: Haswell Core i3/i5/i7 model 60 (coreihwl)
JBigI status: Locally optimized native BigInteger library loaded from file
GMP version: 6.2.1
JBigI version: 4
JCpuId version: 3
Encoding: UTF-8
Charset: UTF-8
Service: true
Revision: 050a52a2eadd755c9f80c03d106eb2b5a02ae6a2
Built: reproducible
Built By: Undefined
With the set-up below, the IRC Server Tunnel, the IRC Client tunnel, and the SOCKS5 IRC tunnel are all on the same I2P router. The IRC client tunnel can find the dest but the SOCKS5 IRC tunnel cannot.
I'm using the SOCKS5 IRC proxy. I've been able to stay connected to my own ircd using the SOCKS tunnel since I started the router a day ago.
I tried to /oper
using the wrong password. I was dropped by the ircd. (This is "normal" and happens outside of I2P)
I am not able to reconnect through the SOCKS irc proxy:
22:25 -- Password incorrect
22:25 =!= Password incorrect
22:25 =!= irc: reading data on socket: error 4 (connection closed by peer)
22:25 -- irc: disconnecting from server...
22:25 -- irc: disconnected from server
22:25 -- irc: reconnecting to server in 10 seconds
22:25 -- irc: reconnecting to server...
22:25 -- irc: connecting to server wre4majmg2vnbi6id27et7yw6lnpf56wkbm6ftnlwpvxnktq73hq.b32.i2p/6667 via socks5 proxy xx.xx.xx.xx/4052...
22:25 =!= irc: proxy fails to establish connection to server (check username/password if used and if server address/port is allowed by proxy)
22:25 -- irc: reconnecting to server in 20 seconds
22:26 -- irc: reconnecting to server...
22:26 -- irc: connecting to server wre4majmg2vnbi6id27et7yw6lnpf56wkbm6ftnlwpvxnktq73hq.b32.i2p/6667 via socks5 proxy xx.xx.xx.xx/4052...
22:26 =!= irc: proxy fails to establish connection to server (check username/password if used and if server address/port is allowed by proxy)
22:26 -- irc: reconnecting to server in 40 seconds
22:27 -- irc: reconnecting to server...
22:27 -- irc: connecting to server wre4majmg2vnbi6id27et7yw6lnpf56wkbm6ftnlwpvxnktq73hq.b32.i2p/6667 via socks5 proxy xx.xx.xx.xx/4052...
22:27 -- irc: disconnected from server
22:27 -- irc: connecting to server wre4majmg2vnbi6id27et7yw6lnpf56wkbm6ftnlwpvxnktq73hq.b32.i2p/6667 via socks5 proxy xx.xx.xx.xx/4052...
22:27 =!= irc: proxy fails to establish connection to server (check username/password if used and if server address/port is allowed by proxy)
22:27 -- irc: reconnecting to server in 10 seconds
22:27 -- irc: reconnecting to server...
22:27 -- irc: connecting to server wre4majmg2vnbi6id27et7yw6lnpf56wkbm6ftnlwpvxnktq73hq.b32.i2p/6667 via socks5 proxy xx.xx.xx.xx/4052...
22:27 =!= irc: proxy fails to establish connection to server (check username/password if used and if server address/port is allowed by proxy)
22:27 -- irc: reconnecting to server in 20 seconds
22:28 -- irc: reconnecting to server...
22:28 -- irc: connecting to server wre4majmg2vnbi6id27et7yw6lnpf56wkbm6ftnlwpvxnktq73hq.b32.i2p/6667 via socks5 proxy xx.xx.xx.xx/4052...
22:28 =!= irc: proxy fails to establish connection to server (check username/password if used and if server address/port is allowed by proxy)
22:28 -- irc: reconnecting to server in 40 seconds
22:28 -- irc: reconnecting to server...
22:28 -- irc: connecting to server wre4majmg2vnbi6id27et7yw6lnpf56wkbm6ftnlwpvxnktq73hq.b32.i2p/6667 via socks5 proxy xx.xx.xx.xx/4052...
22:29 =!= irc: proxy fails to establish connection to server (check username/password if used and if server address/port is allowed by proxy)
22:29 -- irc: reconnecting to server in 1 minute, 20 seconds
22:30 -- irc: reconnecting to server...
22:30 -- irc: connecting to server wre4majmg2vnbi6id27et7yw6lnpf56wkbm6ftnlwpvxnktq73hq.b32.i2p/6667 via socks5 proxy xx.xx.xx.xx/4052...
Logs from I2PTunnel show that the host cannot be found.
May 20, 2024, 10:48:13 PM WARN [ Runner 2967] tunnel.socks.I2PSOCKSIRCTunnel: Error from SOCKS connection
net.i2p.socks.SOCKSException: Connection error
at net.i2p.i2ptunnel.socks.SOCKS5Server.getDestinationI2PSocket(SOCKS5Server.java:568)
at net.i2p.i2ptunnel.socks.I2PSOCKSIRCTunnel.clientConnectionRun(I2PSOCKSIRCTunnel.java:62)
at net.i2p.i2ptunnel.I2PTunnelClientBase$BlockingRunner.run(I2PTunnelClientBase.java:859)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:840)
Caused by: net.i2p.socks.SOCKSException: Host not found
at net.i2p.i2ptunnel.socks.SOCKS5Server.getDestinationI2PSocket(SOCKS5Server.java:471)
... 5 more
I set up a new IRC client tunnel that points to this same dest (wre4majmg2vnbi6id27et7yw6lnpf56wkbm6ftnlwpvxnktq73hq.b32.i2p
(aka irc.killyourtv.i2p
)), and I'm able to connect.
22:52 -- irc: connecting to server domain.tld/7000...
22:52 -- irc: connected to doman.tld/7000 (xx.xx.xx.xx)
22:52 -- irc: client capability, server supports: account-notify account-tag away-notify batch cap-notify chghost draft/account-registration=before-connect draft/channel-rename draft/chathistory draft/event-playback draft/languages=17,en,~bs,~de,~el,~en-AU,~es,~fi,~fr-FR,~it,~nl,~no,~pl,~pt-BR,~ro,~sq-AL,~tr-TR,~zh-CN draft/message-redaction draft/multiline=max-bytes=4096,max-lines=100 draft/no-implicit-names draft/persistence draft/pre-away draft/read-marker draft/relaymsg=/ echo-message ergo.chat/nope extended-join extended-monitor invite-notify labeled-response message-tags multi-prefix sasl=PLAIN,EXTERNAL,SCRAM-SHA-256 server-time setname standard-replies userhost-in-names znc.in/playback znc.in/self-message
22:52 -- irc: client capability, requesting: account-notify away-notify cap-notify chghost extended-join invite-notify message-tags multi-prefix sasl server-time setname userhost-in-names
22:52 -- irc: client capability, enabled: account-notify away-notify cap-notify chghost extended-join invite-notify message-tags multi-prefix sasl server-time setname userhost-in-names
22:52 -- You are now logged in as kytv
22:52 -- Authentication successful
22:52 -- Welcome to the KillYourIRC IRC Network kytv
22:52 -- Your host is irc.killyourtv.i2p, running version ergo-2.13.0-i2p-b5b4c3feaac34bcc
22:52 -- This server was created Mon, 20 May 2024 22:32:04 UTC
I'm still unable to connect to my own IRC server using the SOCKS IRC Proxy. Stopping and restarting the SOCKS IRC proxy does not correct the problem. Neither did stopping and starting the IRC server tunnel.
However, I'm currently connected to another IRC server (ilita) using this same SOCKS IRC proxy.
May 20, 2024, 11:07:27 PM DEBUG [Client 40 in] tunnel.socks.I2PSOCKSIRCTunnel: in: [PING :irc.ilita.i2p]
May 20, 2024, 11:07:27 PM INFO [Client 40 in] tunnel.socks.I2PSOCKSIRCTunnel: inbound: PING :irc.ilita.i2p
May 20, 2024, 11:07:27 PM DEBUG [nt Runner 48] tunnel.socks.I2PSOCKSIRCTunnel: out: [PONG :irc.ilita.i2p]
May 20, 2024, 11:07:27 PM INFO [nt Runner 48] tunnel.socks.I2PSOCKSIRCTunnel: outbound: PONG :irc.ilita.i2p
May 20, 2024, 11:07:27 PM DEBUG [Client 40 in] tunnel.socks.I2PSOCKSIRCTunnel: in: [:irc.ilita.i2p PONG irc.ilita.i2p :irc.ilita.i2p]
May 20, 2024, 11:07:27 PM INFO [Client 40 in] tunnel.socks.I2PSOCKSIRCTunnel: inbound: :irc.ilita.i2p PONG irc.ilita.i2p :irc.ilita.i2p
Connections to my own server are still failing through the SOCKS IRC proxy.
23:09 -- irc: reconnecting to server...
23:09 -- irc: connecting to server wre4majmg2vnbi6id27et7yw6lnpf56wkbm6ftnlwpvxnktq73hq.b32.i2p/6667 via socks5 proxy xx.xx.xx.xx/4052...
23:10 =!= irc: proxy fails to establish connection to server (check username/password if used and if server address/port is allowed by proxy)
23:10 -- irc: reconnecting to server in 10 minutes
May 20, 2024, 11:10:03 PM WARN [ Runner 3118] tunnel.socks.I2PSOCKSIRCTunnel: Error from SOCKS connection
net.i2p.socks.SOCKSException: Connection error
at net.i2p.i2ptunnel.socks.SOCKS5Server.getDestinationI2PSocket(SOCKS5Server.java:568)
at net.i2p.i2ptunnel.socks.I2PSOCKSIRCTunnel.clientConnectionRun(I2PSOCKSIRCTunnel.java:62)
at net.i2p.i2ptunnel.I2PTunnelClientBase$BlockingRunner.run(I2PTunnelClientBase.java:859)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:840)
Caused by: net.i2p.socks.SOCKSException: Host not found
at net.i2p.i2ptunnel.socks.SOCKS5Server.getDestinationI2PSocket(SOCKS5Server.java:471)
... 5 more
I'll try to leave everything in the current state in case there's anything for me to do or try in order to provide more information.