Opened 7 years ago

Last modified 5 years ago

#829 assigned enhancement

NamingService lookup fails through I2CP client while B32 succeeds

Reported by: str4d Owned by: sponge
Priority: minor Milestone:
Component: apps/BOB Version: 0.9.4
Keywords: Cc: sponge
Parent Tickets: Sensitive: no

Description

Using BOB-one.jar to look up a Destination:

$ telnet localhost 2828
Trying 127.0.0.1…
Connected to localhost.
Escape character is ']'.
BOB 00.00.10
OK
lookup str4d.i2p
ERROR Address Not found.
lookup wrrwzdgsppwl2g2bdohhajz3dh45ui6u3y7yuop5ivvfzxtwnipa.b32.i2p
OK 76jw0zcIw9PuxUX~tYf4EefSxOAb8rfGC2PXO8Mfj~WMvN-jrW-0cs6CcGDot0a8wQ0YCHqino5pHfRip84QL2d59HsAGQX1o0~zFb-y~B-Ii0C0UaQXXZmKf38nfZncl8nOmoeyAbb-hkFLlvcTBDcrNLjcPFNvjSNMLrgPqa4i8hRvrKI8gBhaA5ZzOY4uAEU-0qMCHtWm5655BkMaDGtKfbM5VwxHfRmndKdlUtBKgk8DwChm1cjk3fAOwzPJriNzqwDmMrROC8iZ465rv4hjnI03MUu5wpEXA~Jh3wkC66cKYGvrCxlNm~tP5DtfVZ-hA2Ks0zigmQcKieXfcyKZqXShHbyLOhmU2YKuwUxnhLZo-4SeHxVNZ8iPH6l1MeevrRNyf5JfMcE6MKT4F8eZwlVhRWTpo-T2~EQwNqcEzA2F8kpT3D15s1xR40Q-iFO6p-l6C6BUm74s2j7uOGV1tWtEqLTWqs0RKz~ELuPlgMgjlYiIjGzSacr40cq4AAAA

str4d.i2p is definitely in the addressbook for the router. This is not a problem with BOB because when using a BOB running in a local router, there are no problems.

Subtickets

Change History (7)

comment:1 Changed 7 years ago by zzz

Cc: sponge added
Type: defectenhancement

While your use case may make perfect sense, we don't support it.

Outside of router context, all hostname (String) naming resolution is done locally, meaning, more or less, you need a hosts.txt or hostsdb.blockfile in $CWD. You can test this by using the i2ptunnel CLI and attempting to ping example.i2p. It won't work.

The only lookup I2CP supports is HASH lookups. Bob is converting the b32 to a Hash, then sending it thru I2CP.

It's something we could do… whether it makes sense to do it, i.e. implement a I2CP fallback to local resolution, I'm not sure.

Please test with a local hosts.txt or hostsdb.blockfile, pretty sure it will work.

Changing to 'enhancement'.

comment:2 Changed 7 years ago by str4d

Yes, with a local hostsdb.blockfile it works.

With a hosts.txt file, if BOB is started before the hosts.txt file is placed, it doesn't pick it up and generated an empty hostsdb.blockfile.

If BOB starts with an empty hostsdb.blockfile and a hosts.txt, it uses the blockfile preferentially.

If BOB starts with a hosts.txt and no blockfile, it copies the hosts.txt contents into a new blockfile and lookups work.

comment:3 Changed 7 years ago by str4d

Milestone: 0.9.5

comment:5 Changed 6 years ago by zzz

Milestone: 0.9.12
Status: newaccepted

comment:6 Changed 6 years ago by zzz

Component: api/i2cpapps/BOB
Milestone: 0.9.120.9.15
Owner: changed from zzz to sponge
Status: acceptedassigned

I2CP enhancement propped as 0.9.10-6
mods now required in BOB to use it, possibly with configuration option.

comment:7 Changed 5 years ago by str4d

Milestone: 0.9.15
Note: See TracTickets for help on using tickets.