Modify discovery port

This commit is contained in:
Julian Yap 2016-11-19 00:46:55 -10:00
parent f5a1692b10
commit ebd66bff1f
22 changed files with 78 additions and 78 deletions

View file

@ -9,6 +9,6 @@ RUN \
rm -rf /go-ubiq && rm -rf /var/cache/apk/* rm -rf /go-ubiq && rm -rf /var/cache/apk/*
EXPOSE 8588 EXPOSE 8588
EXPOSE 30303 EXPOSE 30388
ENTRYPOINT ["/gubiq"] ENTRYPOINT ["/gubiq"]

View file

@ -108,7 +108,7 @@ One of the quickest ways to get Ethereum up and running on your machine is by us
``` ```
docker run -d --name ethereum-node -v /Users/alice/ethereum:/root \ docker run -d --name ethereum-node -v /Users/alice/ethereum:/root \
-p 8588:8588 -p 30303:30303 \ -p 8588:8588 -p 30388:30388 \
ethereum/client-go --fast --cache=512 ethereum/client-go --fast --cache=512
``` ```

View file

@ -24,14 +24,14 @@ Section "Gubiq" GETH_IDX
createShortCut "$SMPROGRAMS\${APPNAME}\Uninstall.lnk" "$INSTDIR\uninstall.exe" "" "" "" createShortCut "$SMPROGRAMS\${APPNAME}\Uninstall.lnk" "$INSTDIR\uninstall.exe" "" "" ""
# Firewall - remove rules (if exists) # Firewall - remove rules (if exists)
SimpleFC::AdvRemoveRule "Gubiq incoming peers (TCP:30303)" SimpleFC::AdvRemoveRule "Gubiq incoming peers (TCP:30388)"
SimpleFC::AdvRemoveRule "Gubiq outgoing peers (TCP:30303)" SimpleFC::AdvRemoveRule "Gubiq outgoing peers (TCP:30388)"
SimpleFC::AdvRemoveRule "Gubiq UDP discovery (UDP:30303)" SimpleFC::AdvRemoveRule "Gubiq UDP discovery (UDP:30388)"
# Firewall - add rules # Firewall - add rules
SimpleFC::AdvAddRule "Gubiq incoming peers (TCP:30303)" "" 6 1 1 2147483647 1 "$INSTDIR\gubiq.exe" "" "" "Ubiq" 30303 "" "" "" SimpleFC::AdvAddRule "Gubiq incoming peers (TCP:30388)" "" 6 1 1 2147483647 1 "$INSTDIR\gubiq.exe" "" "" "Ubiq" 30388 "" "" ""
SimpleFC::AdvAddRule "Gubiq outgoing peers (TCP:30303)" "" 6 2 1 2147483647 1 "$INSTDIR\gubiq.exe" "" "" "Ubiq" "" 30303 "" "" SimpleFC::AdvAddRule "Gubiq outgoing peers (TCP:30388)" "" 6 2 1 2147483647 1 "$INSTDIR\gubiq.exe" "" "" "Ubiq" "" 30388 "" ""
SimpleFC::AdvAddRule "Gubiq UDP discovery (UDP:30303)" "" 17 2 1 2147483647 1 "$INSTDIR\gubiq.exe" "" "" "Ubiq" "" 30303 "" "" SimpleFC::AdvAddRule "Gubiq UDP discovery (UDP:30388)" "" 17 2 1 2147483647 1 "$INSTDIR\gubiq.exe" "" "" "Ubiq" "" 30388 "" ""
# Set default IPC endpoint (https://github.com/ethereum/EIPs/issues/147) # Set default IPC endpoint (https://github.com/ethereum/EIPs/issues/147)
${EnvVarUpdate} $0 "ETHEREUM_SOCKET" "R" "HKLM" "\\.\pipe\gubiq.ipc" ${EnvVarUpdate} $0 "ETHEREUM_SOCKET" "R" "HKLM" "\\.\pipe\gubiq.ipc"

View file

@ -17,9 +17,9 @@ Section "Uninstall"
rmDir "$SMPROGRAMS\${APPNAME}" rmDir "$SMPROGRAMS\${APPNAME}"
# Firewall - remove rules if exists # Firewall - remove rules if exists
SimpleFC::AdvRemoveRule "Gubiq incoming peers (TCP:30303)" SimpleFC::AdvRemoveRule "Gubiq incoming peers (TCP:30388)"
SimpleFC::AdvRemoveRule "Gubiq outgoing peers (TCP:30303)" SimpleFC::AdvRemoveRule "Gubiq outgoing peers (TCP:30388)"
SimpleFC::AdvRemoveRule "Gubiq UDP discovery (UDP:30303)" SimpleFC::AdvRemoveRule "Gubiq UDP discovery (UDP:30388)"
# Remove IPC endpoint (https://github.com/ethereum/EIPs/issues/147) # Remove IPC endpoint (https://github.com/ethereum/EIPs/issues/147)
${un.EnvVarUpdate} $0 "ETHEREUM_SOCKET" "R" "HKLM" "\\.\pipe\gubiq.ipc" ${un.EnvVarUpdate} $0 "ETHEREUM_SOCKET" "R" "HKLM" "\\.\pipe\gubiq.ipc"

View file

@ -339,7 +339,7 @@ var (
ListenPortFlag = cli.IntFlag{ ListenPortFlag = cli.IntFlag{
Name: "port", Name: "port",
Usage: "Network listening port", Usage: "Network listening port",
Value: 30303, Value: 30388,
} }
BootnodesFlag = cli.StringFlag{ BootnodesFlag = cli.StringFlag{
Name: "bootnodes", Name: "bootnodes",

View file

@ -9,6 +9,6 @@ RUN \
rm -rf /go-ubiq && rm -rf /var/cache/apk/* rm -rf /go-ubiq && rm -rf /var/cache/apk/*
EXPOSE 8588 EXPOSE 8588
EXPOSE 30303 EXPOSE 30388
ENTRYPOINT ["/gubiq"] ENTRYPOINT ["/gubiq"]

View file

@ -12,6 +12,6 @@ RUN apt-get update && \
apt-get install -q -y gubiq apt-get install -q -y gubiq
EXPOSE 8588 EXPOSE 8588
EXPOSE 30303 EXPOSE 30388
ENTRYPOINT ["/usr/bin/gubiq"] ENTRYPOINT ["/usr/bin/gubiq"]

View file

@ -9,6 +9,6 @@ RUN \
rm -rf /go-ubiq && rm -rf /var/cache/apk/* rm -rf /go-ubiq && rm -rf /var/cache/apk/*
EXPOSE 8588 EXPOSE 8588
EXPOSE 30303 EXPOSE 30388
ENTRYPOINT ["/gubiq"] ENTRYPOINT ["/gubiq"]

View file

@ -12,6 +12,6 @@ RUN apt-get update && \
apt-get install -q -y gubiq apt-get install -q -y gubiq
EXPOSE 8588 EXPOSE 8588
EXPOSE 30303 EXPOSE 30388
ENTRYPOINT ["/usr/bin/gubiq"] ENTRYPOINT ["/usr/bin/gubiq"]

View file

@ -49,10 +49,10 @@ type Enode struct {
// query parameter "discport". // query parameter "discport".
// //
// In the following example, the node URL describes // In the following example, the node URL describes
// a node with IP address 10.3.58.6, TCP listening port 30303 // a node with IP address 10.3.58.6, TCP listening port 30388
// and UDP discovery port 30301. // and UDP discovery port 30301.
// //
// enode://<hex node id>@10.3.58.6:30303?discport=30301 // enode://<hex node id>@10.3.58.6:30388?discport=30301
func NewEnode(rawurl string) (*Enode, error) { func NewEnode(rawurl string) (*Enode, error) {
node, err := discv5.ParseNode(rawurl) node, err := discv5.ParseNode(rawurl)
if err != nil { if err != nil {

View file

@ -105,8 +105,8 @@ func TestNodeDBFetchStore(t *testing.T) {
node := NewNode( node := NewNode(
MustHexID("0x1dd9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"), MustHexID("0x1dd9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"),
net.IP{192, 168, 0, 1}, net.IP{192, 168, 0, 1},
30303, 30388,
30303, 30388,
) )
inst := time.Now() inst := time.Now()
num := 314 num := 314
@ -168,8 +168,8 @@ var nodeDBSeedQueryNodes = []struct {
node: NewNode( node: NewNode(
MustHexID("0x84d9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"), MustHexID("0x84d9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"),
net.IP{127, 0, 0, 3}, net.IP{127, 0, 0, 3},
30303, 30388,
30303, 30388,
), ),
pong: time.Now().Add(-3 * time.Hour), pong: time.Now().Add(-3 * time.Hour),
}, },
@ -179,8 +179,8 @@ var nodeDBSeedQueryNodes = []struct {
node: NewNode( node: NewNode(
MustHexID("0x57d9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"), MustHexID("0x57d9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"),
net.IP{127, 0, 0, 3}, net.IP{127, 0, 0, 3},
30303, 30388,
30303, 30388,
), ),
pong: time.Now().Add(-4 * time.Second), pong: time.Now().Add(-4 * time.Second),
}, },
@ -190,8 +190,8 @@ var nodeDBSeedQueryNodes = []struct {
node: NewNode( node: NewNode(
MustHexID("0x22d9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"), MustHexID("0x22d9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"),
net.IP{127, 0, 0, 1}, net.IP{127, 0, 0, 1},
30303, 30388,
30303, 30388,
), ),
pong: time.Now().Add(-2 * time.Second), pong: time.Now().Add(-2 * time.Second),
}, },
@ -199,8 +199,8 @@ var nodeDBSeedQueryNodes = []struct {
node: NewNode( node: NewNode(
MustHexID("0x44d9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"), MustHexID("0x44d9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"),
net.IP{127, 0, 0, 2}, net.IP{127, 0, 0, 2},
30303, 30388,
30303, 30388,
), ),
pong: time.Now().Add(-3 * time.Second), pong: time.Now().Add(-3 * time.Second),
}, },
@ -208,8 +208,8 @@ var nodeDBSeedQueryNodes = []struct {
node: NewNode( node: NewNode(
MustHexID("0xe2d9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"), MustHexID("0xe2d9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"),
net.IP{127, 0, 0, 3}, net.IP{127, 0, 0, 3},
30303, 30388,
30303, 30388,
), ),
pong: time.Now().Add(-1 * time.Second), pong: time.Now().Add(-1 * time.Second),
}, },
@ -306,8 +306,8 @@ var nodeDBExpirationNodes = []struct {
node: NewNode( node: NewNode(
MustHexID("0x01d9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"), MustHexID("0x01d9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"),
net.IP{127, 0, 0, 1}, net.IP{127, 0, 0, 1},
30303, 30388,
30303, 30388,
), ),
pong: time.Now().Add(-nodeDBNodeExpiration + time.Minute), pong: time.Now().Add(-nodeDBNodeExpiration + time.Minute),
exp: false, exp: false,
@ -315,8 +315,8 @@ var nodeDBExpirationNodes = []struct {
node: NewNode( node: NewNode(
MustHexID("0x02d9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"), MustHexID("0x02d9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"),
net.IP{127, 0, 0, 2}, net.IP{127, 0, 0, 2},
30303, 30388,
30303, 30388,
), ),
pong: time.Now().Add(-nodeDBNodeExpiration - time.Minute), pong: time.Now().Add(-nodeDBNodeExpiration - time.Minute),
exp: true, exp: true,

View file

@ -136,10 +136,10 @@ var incompleteNodeURL = regexp.MustCompile("(?i)^(?:enode://)?([0-9a-f]+)$")
// query parameter "discport". // query parameter "discport".
// //
// In the following example, the node URL describes // In the following example, the node URL describes
// a node with IP address 10.3.58.6, TCP listening port 30303 // a node with IP address 10.3.58.6, TCP listening port 30388
// and UDP discovery port 30301. // and UDP discovery port 30301.
// //
// enode://<hex node id>@10.3.58.6:30303?discport=30301 // enode://<hex node id>@10.3.58.6:30388?discport=30301
func ParseNode(rawurl string) (*Node, error) { func ParseNode(rawurl string) (*Node, error) {
if m := incompleteNodeURL.FindStringSubmatch(rawurl); m != nil { if m := incompleteNodeURL.FindStringSubmatch(rawurl); m != nil {
id, err := HexID(m[1]) id, err := HexID(m[1])

View file

@ -35,7 +35,7 @@ func ExampleNewNode() {
id := MustHexID("1dd9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439") id := MustHexID("1dd9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439")
// Complete nodes contain UDP and TCP endpoints: // Complete nodes contain UDP and TCP endpoints:
n1 := NewNode(id, net.ParseIP("2001:db8:3c4d:15::abcd:ef12"), 52150, 30303) n1 := NewNode(id, net.ParseIP("2001:db8:3c4d:15::abcd:ef12"), 52150, 30388)
fmt.Println("n1:", n1) fmt.Println("n1:", n1)
fmt.Println("n1.Incomplete() ->", n1.Incomplete()) fmt.Println("n1.Incomplete() ->", n1.Incomplete())
@ -46,7 +46,7 @@ func ExampleNewNode() {
fmt.Println("n2.Incomplete() ->", n2.Incomplete()) fmt.Println("n2.Incomplete() ->", n2.Incomplete())
// Output: // Output:
// n1: enode://1dd9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439@[2001:db8:3c4d:15::abcd:ef12]:30303?discport=52150 // n1: enode://1dd9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439@[2001:db8:3c4d:15::abcd:ef12]:30388?discport=52150
// n1.Incomplete() -> false // n1.Incomplete() -> false
// n2: enode://1dd9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439 // n2: enode://1dd9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439
// n2.Incomplete() -> true // n2.Incomplete() -> true

View file

@ -118,7 +118,7 @@ func newUDPTest(t *testing.T) *udpTest {
pipe: newpipe(), pipe: newpipe(),
localkey: newkey(), localkey: newkey(),
remotekey: newkey(), remotekey: newkey(),
remoteaddr: &net.UDPAddr{IP: net.IP{1, 2, 3, 4}, Port: 30303}, remoteaddr: &net.UDPAddr{IP: net.IP{1, 2, 3, 4}, Port: 30388},
} }
test.table, test.udp, _ = newUDP(test.localkey, test.pipe, nil, "") test.table, test.udp, _ = newUDP(test.localkey, test.pipe, nil, "")
return test return test
@ -347,10 +347,10 @@ func TestUDP_findnodeMultiReply(t *testing.T) {
// send the reply as two packets. // send the reply as two packets.
list := []*Node{ list := []*Node{
MustParseNode("enode://ba85011c70bcc5c04d8607d3a0ed29aa6179c092cbdda10d5d32684fb33ed01bd94f588ca8f91ac48318087dcb02eaf36773a7a453f0eedd6742af668097b29c@10.0.1.16:30303?discport=30304"), MustParseNode("enode://ba85011c70bcc5c04d8607d3a0ed29aa6179c092cbdda10d5d32684fb33ed01bd94f588ca8f91ac48318087dcb02eaf36773a7a453f0eedd6742af668097b29c@10.0.1.16:30388?discport=30304"),
MustParseNode("enode://81fa361d25f157cd421c60dcc28d8dac5ef6a89476633339c5df30287474520caca09627da18543d9079b5b288698b542d56167aa5c09111e55acdbbdf2ef799@10.0.1.16:30303"), MustParseNode("enode://81fa361d25f157cd421c60dcc28d8dac5ef6a89476633339c5df30287474520caca09627da18543d9079b5b288698b542d56167aa5c09111e55acdbbdf2ef799@10.0.1.16:30388"),
MustParseNode("enode://9bffefd833d53fac8e652415f4973bee289e8b1a5c6c4cbe70abf817ce8a64cee11b823b66a987f51aaa9fba0d6a91b3e6bf0d5a5d1042de8e9eeea057b217f8@10.0.1.36:30301?discport=17"), MustParseNode("enode://9bffefd833d53fac8e652415f4973bee289e8b1a5c6c4cbe70abf817ce8a64cee11b823b66a987f51aaa9fba0d6a91b3e6bf0d5a5d1042de8e9eeea057b217f8@10.0.1.36:30301?discport=17"),
MustParseNode("enode://1b5b4aa662d7cb44a7221bfba67302590b643028197a7d5214790f3bac7aaa4a3241be9e83c09cf1f6c69d007c634faae3dc1b1221793e8446c0b3a09de65960@10.0.1.16:30303"), MustParseNode("enode://1b5b4aa662d7cb44a7221bfba67302590b643028197a7d5214790f3bac7aaa4a3241be9e83c09cf1f6c69d007c634faae3dc1b1221793e8446c0b3a09de65960@10.0.1.16:30388"),
} }
rpclist := make([]rpcNode, len(list)) rpclist := make([]rpcNode, len(list))
for i := range list { for i := range list {

View file

@ -105,8 +105,8 @@ func TestNodeDBFetchStore(t *testing.T) {
node := NewNode( node := NewNode(
MustHexID("0x1dd9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"), MustHexID("0x1dd9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"),
net.IP{192, 168, 0, 1}, net.IP{192, 168, 0, 1},
30303, 30388,
30303, 30388,
) )
inst := time.Now() inst := time.Now()
num := 314 num := 314
@ -168,8 +168,8 @@ var nodeDBSeedQueryNodes = []struct {
node: NewNode( node: NewNode(
MustHexID("0x84d9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"), MustHexID("0x84d9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"),
net.IP{127, 0, 0, 3}, net.IP{127, 0, 0, 3},
30303, 30388,
30303, 30388,
), ),
pong: time.Now().Add(-3 * time.Hour), pong: time.Now().Add(-3 * time.Hour),
}, },
@ -179,8 +179,8 @@ var nodeDBSeedQueryNodes = []struct {
node: NewNode( node: NewNode(
MustHexID("0x57d9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"), MustHexID("0x57d9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"),
net.IP{127, 0, 0, 3}, net.IP{127, 0, 0, 3},
30303, 30388,
30303, 30388,
), ),
pong: time.Now().Add(-4 * time.Second), pong: time.Now().Add(-4 * time.Second),
}, },
@ -190,8 +190,8 @@ var nodeDBSeedQueryNodes = []struct {
node: NewNode( node: NewNode(
MustHexID("0x22d9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"), MustHexID("0x22d9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"),
net.IP{127, 0, 0, 1}, net.IP{127, 0, 0, 1},
30303, 30388,
30303, 30388,
), ),
pong: time.Now().Add(-2 * time.Second), pong: time.Now().Add(-2 * time.Second),
}, },
@ -199,8 +199,8 @@ var nodeDBSeedQueryNodes = []struct {
node: NewNode( node: NewNode(
MustHexID("0x44d9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"), MustHexID("0x44d9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"),
net.IP{127, 0, 0, 2}, net.IP{127, 0, 0, 2},
30303, 30388,
30303, 30388,
), ),
pong: time.Now().Add(-3 * time.Second), pong: time.Now().Add(-3 * time.Second),
}, },
@ -208,8 +208,8 @@ var nodeDBSeedQueryNodes = []struct {
node: NewNode( node: NewNode(
MustHexID("0xe2d9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"), MustHexID("0xe2d9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"),
net.IP{127, 0, 0, 3}, net.IP{127, 0, 0, 3},
30303, 30388,
30303, 30388,
), ),
pong: time.Now().Add(-1 * time.Second), pong: time.Now().Add(-1 * time.Second),
}, },
@ -306,8 +306,8 @@ var nodeDBExpirationNodes = []struct {
node: NewNode( node: NewNode(
MustHexID("0x01d9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"), MustHexID("0x01d9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"),
net.IP{127, 0, 0, 1}, net.IP{127, 0, 0, 1},
30303, 30388,
30303, 30388,
), ),
pong: time.Now().Add(-nodeDBNodeExpiration + time.Minute), pong: time.Now().Add(-nodeDBNodeExpiration + time.Minute),
exp: false, exp: false,
@ -315,8 +315,8 @@ var nodeDBExpirationNodes = []struct {
node: NewNode( node: NewNode(
MustHexID("0x02d9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"), MustHexID("0x02d9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439"),
net.IP{127, 0, 0, 2}, net.IP{127, 0, 0, 2},
30303, 30388,
30303, 30388,
), ),
pong: time.Now().Add(-nodeDBNodeExpiration - time.Minute), pong: time.Now().Add(-nodeDBNodeExpiration - time.Minute),
exp: true, exp: true,

View file

@ -145,10 +145,10 @@ var incompleteNodeURL = regexp.MustCompile("(?i)^(?:enode://)?([0-9a-f]+)$")
// query parameter "discport". // query parameter "discport".
// //
// In the following example, the node URL describes // In the following example, the node URL describes
// a node with IP address 10.3.58.6, TCP listening port 30303 // a node with IP address 10.3.58.6, TCP listening port 30388
// and UDP discovery port 30301. // and UDP discovery port 30301.
// //
// enode://<hex node id>@10.3.58.6:30303?discport=30301 // enode://<hex node id>@10.3.58.6:30388?discport=30301
func ParseNode(rawurl string) (*Node, error) { func ParseNode(rawurl string) (*Node, error) {
if m := incompleteNodeURL.FindStringSubmatch(rawurl); m != nil { if m := incompleteNodeURL.FindStringSubmatch(rawurl); m != nil {
id, err := HexID(m[1]) id, err := HexID(m[1])

View file

@ -35,7 +35,7 @@ func ExampleNewNode() {
id := MustHexID("1dd9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439") id := MustHexID("1dd9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439")
// Complete nodes contain UDP and TCP endpoints: // Complete nodes contain UDP and TCP endpoints:
n1 := NewNode(id, net.ParseIP("2001:db8:3c4d:15::abcd:ef12"), 52150, 30303) n1 := NewNode(id, net.ParseIP("2001:db8:3c4d:15::abcd:ef12"), 52150, 30388)
fmt.Println("n1:", n1) fmt.Println("n1:", n1)
fmt.Println("n1.Incomplete() ->", n1.Incomplete()) fmt.Println("n1.Incomplete() ->", n1.Incomplete())
@ -46,7 +46,7 @@ func ExampleNewNode() {
fmt.Println("n2.Incomplete() ->", n2.Incomplete()) fmt.Println("n2.Incomplete() ->", n2.Incomplete())
// Output: // Output:
// n1: enode://1dd9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439@[2001:db8:3c4d:15::abcd:ef12]:30303?discport=52150 // n1: enode://1dd9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439@[2001:db8:3c4d:15::abcd:ef12]:30388?discport=52150
// n1.Incomplete() -> false // n1.Incomplete() -> false
// n2: enode://1dd9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439 // n2: enode://1dd9d65c4552b5eb43d5ad55a2ee3f56c6cbc1c64a5c8d659f51fcd51bace24351232b8d7821617d2b29b54b81cdefb9b3e9c37d7fd5f63270bcc9e1a6f6a439
// n2.Incomplete() -> true // n2.Incomplete() -> true

View file

@ -287,7 +287,7 @@ func (s *simulation) launchNode(log bool) *Network {
s.nodectr++ s.nodectr++
binary.BigEndian.PutUint32(ip, num) binary.BigEndian.PutUint32(ip, num)
ip[0] = 10 ip[0] = 10
addr := &net.UDPAddr{IP: ip, Port: 30303} addr := &net.UDPAddr{IP: ip, Port: 30388}
transport := &simTransport{joinTime: time.Now(), sender: id, senderAddr: addr, sim: s, priv: key} transport := &simTransport{joinTime: time.Now(), sender: id, senderAddr: addr, sim: s, priv: key}
net, err := newNetwork(transport, key.PublicKey, nil, "<no database>") net, err := newNetwork(transport, key.PublicKey, nil, "<no database>")
@ -357,8 +357,8 @@ func (st *simTransport) sendPing(remote *Node, remoteAddr *net.UDPAddr, topics [
ev: pingPacket, ev: pingPacket,
data: &ping{ data: &ping{
Version: 4, Version: 4,
From: rpcEndpoint{IP: st.senderAddr.IP, UDP: uint16(st.senderAddr.Port), TCP: 30303}, From: rpcEndpoint{IP: st.senderAddr.IP, UDP: uint16(st.senderAddr.Port), TCP: 30388},
To: rpcEndpoint{IP: remoteAddr.IP, UDP: uint16(remoteAddr.Port), TCP: 30303}, To: rpcEndpoint{IP: remoteAddr.IP, UDP: uint16(remoteAddr.Port), TCP: 30388},
Expiration: uint64(time.Now().Unix() + int64(expiration)), Expiration: uint64(time.Now().Unix() + int64(expiration)),
Topics: topics, Topics: topics,
}, },
@ -375,7 +375,7 @@ func (st *simTransport) sendPong(remote *Node, pingHash []byte) {
hash: st.nextHash(), hash: st.nextHash(),
ev: pongPacket, ev: pongPacket,
data: &pong{ data: &pong{
To: rpcEndpoint{IP: raddr.IP, UDP: uint16(raddr.Port), TCP: 30303}, To: rpcEndpoint{IP: raddr.IP, UDP: uint16(raddr.Port), TCP: 30388},
ReplyTok: pingHash, ReplyTok: pingHash,
Expiration: uint64(time.Now().Unix() + int64(expiration)), Expiration: uint64(time.Now().Unix() + int64(expiration)),
}, },

View file

@ -111,7 +111,7 @@ var (
// pipe: newpipe(), // pipe: newpipe(),
// localkey: newkey(), // localkey: newkey(),
// remotekey: newkey(), // remotekey: newkey(),
// remoteaddr: &net.UDPAddr{IP: net.IP{1, 2, 3, 4}, Port: 30303}, // remoteaddr: &net.UDPAddr{IP: net.IP{1, 2, 3, 4}, Port: 30388},
// } // }
// test.table, test.udp, _ = newUDP(test.localkey, test.pipe, nil, "") // test.table, test.udp, _ = newUDP(test.localkey, test.pipe, nil, "")
// return test // return test
@ -239,10 +239,10 @@ var (
// //
// // send the reply as two packets. // // send the reply as two packets.
// list := []*Node{ // list := []*Node{
// MustParseNode("enode://ba85011c70bcc5c04d8607d3a0ed29aa6179c092cbdda10d5d32684fb33ed01bd94f588ca8f91ac48318087dcb02eaf36773a7a453f0eedd6742af668097b29c@10.0.1.16:30303?discport=30304"), // MustParseNode("enode://ba85011c70bcc5c04d8607d3a0ed29aa6179c092cbdda10d5d32684fb33ed01bd94f588ca8f91ac48318087dcb02eaf36773a7a453f0eedd6742af668097b29c@10.0.1.16:30388?discport=30304"),
// MustParseNode("enode://81fa361d25f157cd421c60dcc28d8dac5ef6a89476633339c5df30287474520caca09627da18543d9079b5b288698b542d56167aa5c09111e55acdbbdf2ef799@10.0.1.16:30303"), // MustParseNode("enode://81fa361d25f157cd421c60dcc28d8dac5ef6a89476633339c5df30287474520caca09627da18543d9079b5b288698b542d56167aa5c09111e55acdbbdf2ef799@10.0.1.16:30388"),
// MustParseNode("enode://9bffefd833d53fac8e652415f4973bee289e8b1a5c6c4cbe70abf817ce8a64cee11b823b66a987f51aaa9fba0d6a91b3e6bf0d5a5d1042de8e9eeea057b217f8@10.0.1.36:30301?discport=17"), // MustParseNode("enode://9bffefd833d53fac8e652415f4973bee289e8b1a5c6c4cbe70abf817ce8a64cee11b823b66a987f51aaa9fba0d6a91b3e6bf0d5a5d1042de8e9eeea057b217f8@10.0.1.36:30301?discport=17"),
// MustParseNode("enode://1b5b4aa662d7cb44a7221bfba67302590b643028197a7d5214790f3bac7aaa4a3241be9e83c09cf1f6c69d007c634faae3dc1b1221793e8446c0b3a09de65960@10.0.1.16:30303"), // MustParseNode("enode://1b5b4aa662d7cb44a7221bfba67302590b643028197a7d5214790f3bac7aaa4a3241be9e83c09cf1f6c69d007c634faae3dc1b1221793e8446c0b3a09de65960@10.0.1.16:30388"),
// } // }
// rpclist := make([]rpcNode, len(list)) // rpclist := make([]rpcNode, len(list))
// for i := range list { // for i := range list {

View file

@ -25,12 +25,12 @@ import (
// the main Ethereum network. // the main Ethereum network.
var MainnetBootnodes = []*discover.Node{ var MainnetBootnodes = []*discover.Node{
// ETH/DEV Go Bootnodes // ETH/DEV Go Bootnodes
discover.MustParseNode("enode://a979fb575495b8d6db44f750317d0f4622bf4c2aa3365d6af7c284339968eef29b69ad0dce72a4d8db5ebb4968de0e3bec910127f134779fbcb0cb6d3331163c@52.16.188.185:30303"), // IE discover.MustParseNode("enode://a979fb575495b8d6db44f750317d0f4622bf4c2aa3365d6af7c284339968eef29b69ad0dce72a4d8db5ebb4968de0e3bec910127f134779fbcb0cb6d3331163c@52.16.188.185:30388"), // IE
discover.MustParseNode("enode://de471bccee3d042261d52e9bff31458daecc406142b401d4cd848f677479f73104b9fdeb090af9583d3391b7f10cb2ba9e26865dd5fca4fcdc0fb1e3b723c786@54.94.239.50:30303"), // BR discover.MustParseNode("enode://de471bccee3d042261d52e9bff31458daecc406142b401d4cd848f677479f73104b9fdeb090af9583d3391b7f10cb2ba9e26865dd5fca4fcdc0fb1e3b723c786@54.94.239.50:30388"), // BR
discover.MustParseNode("enode://1118980bf48b0a3640bdba04e0fe78b1add18e1cd99bf22d53daac1fd9972ad650df52176e7c7d89d1114cfef2bc23a2959aa54998a46afcf7d91809f0855082@52.74.57.123:30303"), // SG discover.MustParseNode("enode://1118980bf48b0a3640bdba04e0fe78b1add18e1cd99bf22d53daac1fd9972ad650df52176e7c7d89d1114cfef2bc23a2959aa54998a46afcf7d91809f0855082@52.74.57.123:30388"), // SG
// ETH/DEV Cpp Bootnodes // ETH/DEV Cpp Bootnodes
discover.MustParseNode("enode://979b7fa28feeb35a4741660a16076f1943202cb72b6af70d327f053e248bab9ba81760f39d0701ef1d8f89cc1fbd2cacba0710a12cd5314d5e0c9021aa3637f9@5.1.83.226:30303"), discover.MustParseNode("enode://979b7fa28feeb35a4741660a16076f1943202cb72b6af70d327f053e248bab9ba81760f39d0701ef1d8f89cc1fbd2cacba0710a12cd5314d5e0c9021aa3637f9@5.1.83.226:30388"),
} }
// TestnetBootnodes are the enode URLs of the P2P bootstrap nodes running on the // TestnetBootnodes are the enode URLs of the P2P bootstrap nodes running on the
@ -38,7 +38,7 @@ var MainnetBootnodes = []*discover.Node{
var TestnetBootnodes = []*discover.Node{ var TestnetBootnodes = []*discover.Node{
// ETH/DEV Go Bootnodes // ETH/DEV Go Bootnodes
discover.MustParseNode("enode://e4533109cc9bd7604e4ff6c095f7a1d807e15b38e9bfeb05d3b7c423ba86af0a9e89abbf40bd9dde4250fef114cd09270fa4e224cbeef8b7bf05a51e8260d6b8@94.242.229.4:40404"), discover.MustParseNode("enode://e4533109cc9bd7604e4ff6c095f7a1d807e15b38e9bfeb05d3b7c423ba86af0a9e89abbf40bd9dde4250fef114cd09270fa4e224cbeef8b7bf05a51e8260d6b8@94.242.229.4:40404"),
discover.MustParseNode("enode://8c336ee6f03e99613ad21274f269479bf4413fb294d697ef15ab897598afb931f56beb8e97af530aee20ce2bcba5776f4a312bc168545de4d43736992c814592@94.242.229.203:30303"), discover.MustParseNode("enode://8c336ee6f03e99613ad21274f269479bf4413fb294d697ef15ab897598afb931f56beb8e97af530aee20ce2bcba5776f4a312bc168545de4d43736992c814592@94.242.229.203:30388"),
// ETH/DEV Cpp Bootnodes // ETH/DEV Cpp Bootnodes
} }

View file

@ -16,7 +16,7 @@ RUN cd pyethereum && curl https://bootstrap.pypa.io/bootstrap-buildout.py | pyth
RUN cd pyethereum && bin/buildout RUN cd pyethereum && bin/buildout
#default port for incoming requests #default port for incoming requests
EXPOSE 30303 EXPOSE 30388
WORKDIR /pyethereum WORKDIR /pyethereum

View file

@ -112,7 +112,7 @@ func initialize(x *testing.T) {
var err error var err error
ip := net.IPv4(127, 0, 0, 1) ip := net.IPv4(127, 0, 0, 1)
port0 := 30303 port0 := 30388
for i := 0; i < NumNodes; i++ { for i := 0; i < NumNodes; i++ {
var node TestNode var node TestNode
@ -128,7 +128,7 @@ func initialize(x *testing.T) {
return return
} }
port := port0 + i port := port0 + i
addr := fmt.Sprintf(":%d", port) // e.g. ":30303" addr := fmt.Sprintf(":%d", port) // e.g. ":30388"
name := common.MakeName("whisper-go", "2.0") name := common.MakeName("whisper-go", "2.0")
var peers []*discover.Node var peers []*discover.Node
if i > 0 { if i > 0 {