[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[tor-bugs] #9904 [Tor]: When starting a Tor Relay, Tor may use a disabled network adapter for IP information
#9904: When starting a Tor Relay, Tor may use a disabled network adapter for IP
information
------------------------+-------------------------------
Reporter: hantwister | Owner:
Type: defect | Status: new
Priority: minor | Milestone:
Component: Tor | Version: Tor: 0.2.3.25
Keywords: | Actual Points:
Parent ID: | Points:
------------------------+-------------------------------
I'm running OS X 10.8.5 on a Late 2008 13-inch AluminumÂMacBook. The
computer has a private IP address on an ethernet adapter. When attempting
to start a relay using the latest version of the Tor Browser Bundle
(Vidalia 0.2.21, Tor 0.2.3.25 git-17c24b3118224d65), the following was
continuously observed:
{{{
Oct 05 14:46:01.485 [Info] resolve_my_address(): Learned IP address
'25.2.x.x' for local interface. Using that.
Oct 05 14:46:01.486 [Debug] resolve_my_address(): Resolved Address to
'25.2.x.x'.
Oct 05 14:46:01.488 [Info] router_pick_published_address(): Success: chose
address '25.2.x.x'.
}}}
When running ifconfig, the following was observed:
{{{
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
options=3<RXCSUM,TXCSUM>
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
inet 127.0.0.1 netmask 0xff000000
inet6 ::1 prefixlen 128
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
stf0: flags=0<> mtu 1280
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=27<RXCSUM,TXCSUM,VLAN_MTU,TSO4>
ether 00:23:32:x:x:x
media: autoselect
status: inactive
en1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether 00:23:12:x:x:x
inet6 fe80::x:x:x:x%en1 prefixlen 64 scopeid 0x5
inet 192.168.x.x netmask 0xffffff00 broadcast 192.168.x.255
media: autoselect
status: active
p2p0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 2304
ether 02:23:12:x:x:x
media: autoselect
status: inactive
ham0: flags=8842<BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1404
ether 7a:79:19:x:x:x
inet 25.2.x.x netmask 0xff000000 broadcast 25.255.255.255
inet6 fe80::x:x:x:x%ham0 prefixlen 64 scopeid 0x7
inet6 2620:9b::x:x prefixlen 96
open (pid 88)
}}}
Based on the source code ofÂget_interface_address6, it appears that Tor
first looks for an interface with an IP address that is not a loopback, is
not a multicast and is not an internal address. Because the connected
ethernet adapter has an internal address, Tor skips over it, and the
checks appear to succeed for the ham0 device. The ham0 device is actually
a virtual device provided byÂLogMeInÂHamachi.
In an attempt to remedy this, I stopped and quit Hamachi, and then used
ifconfig to take the virtual network adapter down. In spite of this, Tor
continued to produce log messages similar to those listed above, and
continued to try to use the IP of the disabled virtual network adapter.
Reviewing the source code forÂget_interface_addresses_raw, it appears that
Tor only checks if a device's network family is IPv4 or IPv6. Adding a
check to verify that the interface is up and running appears to fix the
problem for me (patch attached), but I imagine such a change should be
tested on a variety of *nix boxes.
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/9904>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
_______________________________________________
tor-bugs mailing list
tor-bugs@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs