1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
|
Received: from sog-mx-4.v43.ch3.sourceforge.com ([172.29.43.194]
helo=mx.sourceforge.net)
by sfs-ml-3.v29.ch3.sourceforge.com with esmtp (Exim 4.76)
(envelope-from <sam@samtheham.org>) id 1WP5aA-0005Fe-Vo
for bitcoin-development@lists.sourceforge.net;
Sun, 16 Mar 2014 07:34:07 +0000
Received-SPF: pass (sog-mx-4.v43.ch3.sourceforge.com: domain of samtheham.org
designates 209.85.214.180 as permitted sender)
client-ip=209.85.214.180; envelope-from=sam@samtheham.org;
helo=mail-ob0-f180.google.com;
Received: from mail-ob0-f180.google.com ([209.85.214.180])
by sog-mx-4.v43.ch3.sourceforge.com with esmtps (TLSv1:RC4-SHA:128)
(Exim 4.76) id 1WP5a8-0004qx-E6
for bitcoin-development@lists.sourceforge.net;
Sun, 16 Mar 2014 07:34:06 +0000
Received: by mail-ob0-f180.google.com with SMTP id wn1so4336840obc.11
for <bitcoin-development@lists.sourceforge.net>;
Sun, 16 Mar 2014 00:33:59 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20130820;
h=x-gm-message-state:mime-version:date:message-id:subject:from:to
:content-type;
bh=lgy/3J4Xu9gcNqycSRQskOf4XfbLc/8PK5YIAFlsI0Q=;
b=eazl6A9rjsVbeMKTQUkc9iD+kx1it6t/zDi+chicCd5qrMfHbplAa11mwfyvDosi7/
IpwBJc0M42XpWkXTOjWHMJzPBv3kGop/YUe8QMFX0fyGS2PoJl/m2aggg6zxmig9zK9L
2bro71ZsS25KBcj37hsQX48q4dUWllis1lVfM3/OPi26jaagJ72CQIw9f+hY62n3zNuC
IaicbBM2WqviL8cdPuPk7gVPidt7K6Ny/4PaRcc8Z/4jVq1iRYw7PuoNEGO1GzZG8FAW
PBv7pFOcejWAuIxtCAommz2lGUxvFSrjh1duRUPNWOsQP7QR7/QcGmh7OlXdujmP3I2l
f8Cw==
X-Gm-Message-State: ALoCoQkbLFboEOhhSHwyooxHii+gaf3enVHX9t6crKbHFN7lLjwqwhupnKJIhrLMPsJx0Zxh5EVW
MIME-Version: 1.0
X-Received: by 10.60.141.105 with SMTP id rn9mr15019751oeb.27.1394953453445;
Sun, 16 Mar 2014 00:04:13 -0700 (PDT)
Received: by 10.60.82.225 with HTTP; Sun, 16 Mar 2014 00:04:13 -0700 (PDT)
Date: Sun, 16 Mar 2014 02:04:13 -0500
Message-ID: <CAHLiGBPJbpeX887irHYWgWquRv8QTBBR7s4gNZ8KE9y3ZAwJnA@mail.gmail.com>
From: Sam Michaels <sam@samtheham.org>
To: bitcoin-development@lists.sourceforge.net
Content-Type: multipart/alternative; boundary=047d7b2e55ae12373804f4b3e995
X-Spam-Score: -0.2 (/)
X-Spam-Report: Spam Filtering performed by mx.sourceforge.net.
See http://spamassassin.org/tag/ for more details.
-1.5 SPF_CHECK_PASS SPF reports sender host as permitted sender for
sender-domain
-0.0 SPF_PASS SPF: sender matches SPF record
0.3 URIBL_RHS_DOB Contains an URI of a new domain (Day Old Bread)
[URIs: bitcheck.us]
1.0 HTML_MESSAGE BODY: HTML included in message
X-Headers-End: 1WP5a8-0004qx-E6
Subject: [Bitcoin-development] External IP Address
X-BeenThere: bitcoin-development@lists.sourceforge.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: <bitcoin-development.lists.sourceforge.net>
List-Unsubscribe: <https://lists.sourceforge.net/lists/listinfo/bitcoin-development>,
<mailto:bitcoin-development-request@lists.sourceforge.net?subject=unsubscribe>
List-Archive: <http://sourceforge.net/mailarchive/forum.php?forum_name=bitcoin-development>
List-Post: <mailto:bitcoin-development@lists.sourceforge.net>
List-Help: <mailto:bitcoin-development-request@lists.sourceforge.net?subject=help>
List-Subscribe: <https://lists.sourceforge.net/lists/listinfo/bitcoin-development>,
<mailto:bitcoin-development-request@lists.sourceforge.net?subject=subscribe>
X-List-Received-Date: Sun, 16 Mar 2014 07:34:07 -0000
--047d7b2e55ae12373804f4b3e995
Content-Type: text/plain; charset=ISO-8859-1
Hello devs.
I was poking around in the code for a small project and I came across the
function GetMyExternalIP() in net.cpp. The comment says you'd like to
phase out the current method.
I threw together exactly what was asked in the comments: it's a site that
has PHP echo the IP address. Additionally, it captures the IP, user agent,
and time for analysis (a client with the same IP and user agent just
updates the entry).
The site for the client is: ip.bitcheck.us. It does a quick search for
"Mozilla" in the user agent to redirect browers that go there.
The following information is sent:
---
GET / HTTP/1.1
Host: ip.bitcheck.us
User-Agent: /Satoshi:0.8.6/
Connection: close
---
And following is received:
---
HTTP/1.1 200 OK
Date: Sun, 16 Mar 2014 05:31:51 GMT
Server: Apache mod_fcgid/2.3.10-dev
X-Powered-By: Satoshi v1.0
X-Client-Update: yes
Content-Length: 9
Connection: close
Content-Type: text/html
127.0.0.1
---
You can look for X-Client-Update to see if the check in was logged. Other
information can be passed in the header, too.
Errors are trapped so that it will always display the IP address and any
error information is contained in the headers.
Hope you find this useful.
Sam
--047d7b2e55ae12373804f4b3e995
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr">Hello devs.<div><br></div><div>I was poking around in the =
code for a small project and I came across the function GetMyExternalIP() i=
n net.cpp. =A0The comment says you'd like to phase out the current meth=
od.</div>
<div><br></div><div>I threw together exactly what was asked in the comments=
: it's a site that has PHP echo the IP address. =A0Additionally, it cap=
tures the IP, user agent, and time for analysis (a client with the same IP =
and user agent just updates the entry).</div>
<div><br></div><div>The site for the client is: <a href=3D"http://ip.bitche=
ck.us">ip.bitcheck.us</a>. =A0It does a quick search for "Mozilla"=
; in the user agent to redirect browers that go there.</div><div><br></div>
<div>The following information is sent:</div><div><br></div><div>---</div><=
div>GET / HTTP/1.1</div><div>Host: <a href=3D"http://ip.bitcheck.us">ip.bit=
check.us</a></div><div>User-Agent: /Satoshi:0.8.6/</div><div>Connection: cl=
ose</div>
<div>---</div><div><br></div><div>And following is received:</div><div><br>=
</div><div>---</div><div>HTTP/1.1 200 OK</div><div>Date: Sun, 16 Mar 2014 0=
5:31:51 GMT</div><div>Server: Apache mod_fcgid/2.3.10-dev</div><div>X-Power=
ed-By: Satoshi v1.0</div>
<div>X-Client-Update: yes</div><div>Content-Length: 9</div><div>Connection:=
close</div><div>Content-Type: text/html</div><div><br></div><div>127.0.0.1=
</div><div>---</div><div><br></div><div>You can look for X-Client-Update to=
see if the check in was logged. =A0Other information can be passed in the =
header, too.</div>
<div><br></div><div>Errors are trapped so that it will always display the I=
P address and any error information is contained in the headers.</div><div>=
<br></div><div>Hope you find this useful.</div><div><br></div><div>Sam</div=
>
</div>
--047d7b2e55ae12373804f4b3e995--
|