Support spawning multiple transport instances
One Tor instance can only handle one transport instance, i.e., one cannot run two obfs4 instances in one tor. Adding support for this use case will require changes in our PT spec, in PT spec implementations, and in tor.
As pointed out in this comment, tor would need the config options ServerTransportPlugin
, ServerTransportListenAddr
, and ServerTransportOptions
to support multiple instances of a single transport. One way to accomplish this would be to append a numeric, incrementing suffix to a transport's name, e.g.:
ServerTransportPlugin obfs4-0 exec /usr/bin/obfs4proxy
ServerTransportPlugin obfs4-1 exec /usr/bin/obfs4proxy
ServerTransportListenAddr obfs4-0 0.0.0.0:10000
ServerTransportListenAddr obfs4-1 0.0.0.0:20000
#11211 (moved) is vaguely related in that it aims to add dual stack support for bridges so that, say, an obfs4 instance can listen on both an IPv4 and IPv6 address. #29285 (moved) is also related because it tracks our PT spec improvement process and supporting multiple instances of a transport is one potential improvement.