Opened 7 years ago

Closed 7 years ago

#9366 closed defect (fixed)

"ORPort ... Noadvertise" means your bridge silently doesn't work

Reported by: arma Owned by:
Priority: Medium Milestone: Tor: 0.2.4.x-final
Component: Core Tor/Tor Version:
Severity: Keywords: tor-bridge
Cc: Actual Points:
Parent ID: Points:
Reviewer: Sponsor:

Description

If you set up a bridge with

bridgerelay 1
orport 9509 noadvertise

and then have somebody try to reach it with a client (usebridges 1 bridge x.y.z.a:9509).

The result is that the client will stop bootstrapping at

Jul 31 16:06:09.990 [notice] Bootstrapped 50%: Loading relay descriptors.
Jul 31 16:06:10.752 [notice] no known bridge descriptors running yet; stalling

What's happening is the client is asking for /tor/server/authority.z, and on the bridge side, directory_handle_command_get() calls dirserv_get_routerdesc_fingerprints() which calls router_get_my_routerinfo() which returns NULL.

I assume that's because router_rebuild_descriptor() calls router_get_advertised_or_port() which calls get_first_advertised_port_by_type_af() which checks !cfg->no_advertise and ends up returning 0.

Child Tickets

Change History (7)

comment:1 Changed 7 years ago by arma

(Encountered by zwol)

comment:2 Changed 7 years ago by arma

One option is to recognize this config scenario and warn the user.

(The word NoAdvertise is an unfortunate name, since users quite reasonably think it has to do with advertising their relay, and don't understand it has only to do with writing a relay descriptor.)

comment:3 Changed 7 years ago by zwol

N.B. The exact same syndrome can occur if you have the relay address set to RFC 1918 space (perhaps because this is a Tor bridge on a host acting as a gateway from a private network to the public Internet) and ExtendAllowPrivateAddresses is 0.

comment:4 Changed 7 years ago by nickm

You've opened this against 0.2.4.x.. For 0.2.4.x, warning the user is the only fix I can think of. Did you have something else in mind?

comment:5 Changed 7 years ago by nickm

Status: newneeds_review

See branch "bug9366" in my public repository.

comment:6 Changed 7 years ago by arma

looks great

comment:7 Changed 7 years ago by nickm

Resolution: fixed
Status: needs_reviewclosed

Thanks; merged!

Note: See TracTickets for help on using tickets.