libp2p 2.9.0 → 2.10.0-8484de8a2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.min.js +13 -17
- package/dist/index.min.js.map +4 -4
- package/dist/src/address-manager/dns-mappings.d.ts +1 -2
- package/dist/src/address-manager/dns-mappings.d.ts.map +1 -1
- package/dist/src/address-manager/dns-mappings.js +40 -44
- package/dist/src/address-manager/dns-mappings.js.map +1 -1
- package/dist/src/address-manager/index.d.ts.map +1 -1
- package/dist/src/address-manager/index.js +31 -14
- package/dist/src/address-manager/index.js.map +1 -1
- package/dist/src/address-manager/ip-mappings.d.ts +1 -0
- package/dist/src/address-manager/ip-mappings.d.ts.map +1 -1
- package/dist/src/address-manager/ip-mappings.js +51 -40
- package/dist/src/address-manager/ip-mappings.js.map +1 -1
- package/dist/src/address-manager/observed-addresses.d.ts.map +1 -1
- package/dist/src/address-manager/observed-addresses.js +1 -3
- package/dist/src/address-manager/observed-addresses.js.map +1 -1
- package/dist/src/address-manager/transport-addresses.d.ts.map +1 -1
- package/dist/src/address-manager/transport-addresses.js +6 -8
- package/dist/src/address-manager/transport-addresses.js.map +1 -1
- package/dist/src/config/connection-gater.browser.d.ts.map +1 -1
- package/dist/src/config/connection-gater.browser.js +3 -9
- package/dist/src/config/connection-gater.browser.js.map +1 -1
- package/dist/src/config.js +1 -1
- package/dist/src/config.js.map +1 -1
- package/dist/src/connection-manager/address-sorter.d.ts.map +1 -1
- package/dist/src/connection-manager/address-sorter.js +1 -2
- package/dist/src/connection-manager/address-sorter.js.map +1 -1
- package/dist/src/connection-manager/connection-pruner.d.ts.map +1 -1
- package/dist/src/connection-manager/connection-pruner.js +7 -3
- package/dist/src/connection-manager/connection-pruner.js.map +1 -1
- package/dist/src/connection-manager/constants.defaults.d.ts +4 -0
- package/dist/src/connection-manager/constants.defaults.d.ts.map +1 -1
- package/dist/src/connection-manager/constants.defaults.js +4 -0
- package/dist/src/connection-manager/constants.defaults.js.map +1 -1
- package/dist/src/connection-manager/dial-queue.d.ts +2 -2
- package/dist/src/connection-manager/dial-queue.d.ts.map +1 -1
- package/dist/src/connection-manager/dial-queue.js +13 -25
- package/dist/src/connection-manager/dial-queue.js.map +1 -1
- package/dist/src/connection-manager/index.d.ts +10 -2
- package/dist/src/connection-manager/index.d.ts.map +1 -1
- package/dist/src/connection-manager/index.js +45 -27
- package/dist/src/connection-manager/index.js.map +1 -1
- package/dist/src/connection-manager/reconnect-queue.js +1 -1
- package/dist/src/connection-manager/reconnect-queue.js.map +1 -1
- package/dist/src/connection-manager/utils.d.ts +31 -3
- package/dist/src/connection-manager/utils.d.ts.map +1 -1
- package/dist/src/connection-manager/utils.js +99 -18
- package/dist/src/connection-manager/utils.js.map +1 -1
- package/dist/src/connection-monitor.d.ts +1 -1
- package/dist/src/connection-monitor.d.ts.map +1 -1
- package/dist/src/connection-monitor.js +2 -3
- package/dist/src/connection-monitor.js.map +1 -1
- package/dist/src/connection.d.ts +62 -0
- package/dist/src/connection.d.ts.map +1 -0
- package/dist/src/connection.js +239 -0
- package/dist/src/connection.js.map +1 -0
- package/dist/src/get-peer.js +3 -3
- package/dist/src/get-peer.js.map +1 -1
- package/dist/src/index.d.ts +2 -2
- package/dist/src/index.js +2 -2
- package/dist/src/libp2p.d.ts.map +1 -1
- package/dist/src/libp2p.js +5 -5
- package/dist/src/libp2p.js.map +1 -1
- package/dist/src/peer-routing.js +1 -1
- package/dist/src/peer-routing.js.map +1 -1
- package/dist/src/random-walk.d.ts.map +1 -1
- package/dist/src/random-walk.js +13 -3
- package/dist/src/random-walk.js.map +1 -1
- package/dist/src/registrar.d.ts +3 -3
- package/dist/src/registrar.d.ts.map +1 -1
- package/dist/src/registrar.js +50 -41
- package/dist/src/registrar.js.map +1 -1
- package/dist/src/transport-manager.js +15 -2
- package/dist/src/transport-manager.js.map +1 -1
- package/dist/src/upgrader.d.ts +27 -25
- package/dist/src/upgrader.d.ts.map +1 -1
- package/dist/src/upgrader.js +97 -336
- package/dist/src/upgrader.js.map +1 -1
- package/dist/src/utils.d.ts +3 -0
- package/dist/src/utils.d.ts.map +1 -0
- package/dist/src/utils.js +25 -0
- package/dist/src/utils.js.map +1 -0
- package/dist/src/version.d.ts +1 -1
- package/dist/src/version.d.ts.map +1 -1
- package/dist/src/version.js +1 -1
- package/dist/src/version.js.map +1 -1
- package/package.json +26 -30
- package/src/address-manager/dns-mappings.ts +51 -51
- package/src/address-manager/index.ts +37 -17
- package/src/address-manager/ip-mappings.ts +64 -44
- package/src/address-manager/observed-addresses.ts +1 -3
- package/src/address-manager/transport-addresses.ts +7 -9
- package/src/config/connection-gater.browser.ts +3 -12
- package/src/config.ts +1 -1
- package/src/connection-manager/address-sorter.ts +1 -2
- package/src/connection-manager/connection-pruner.ts +8 -3
- package/src/connection-manager/constants.defaults.ts +5 -0
- package/src/connection-manager/dial-queue.ts +14 -29
- package/src/connection-manager/index.ts +62 -29
- package/src/connection-manager/reconnect-queue.ts +1 -1
- package/src/connection-manager/utils.ts +129 -21
- package/src/connection-monitor.ts +3 -4
- package/src/connection.ts +316 -0
- package/src/get-peer.ts +3 -3
- package/src/index.ts +2 -2
- package/src/libp2p.ts +5 -6
- package/src/peer-routing.ts +1 -1
- package/src/random-walk.ts +13 -3
- package/src/registrar.ts +67 -54
- package/src/transport-manager.ts +18 -2
- package/src/upgrader.ts +143 -421
- package/src/utils.ts +31 -0
- package/src/version.ts +1 -1
- package/dist/src/connection/index.d.ts +0 -84
- package/dist/src/connection/index.d.ts.map +0 -1
- package/dist/src/connection/index.js +0 -144
- package/dist/src/connection/index.js.map +0 -1
- package/dist/typedoc-urls.json +0 -24
- package/src/connection/index.ts +0 -199
package/dist/src/upgrader.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upgrader.js","sourceRoot":"","sources":["../../src/upgrader.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"upgrader.js","sourceRoot":"","sources":["../../src/upgrader.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEtD,wBAAgB,QAAQ,CAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,aAAa,GAAG,IAAI,CA4BhF"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export function redirect(channelA, channelB) {
|
|
2
|
+
channelA.addEventListener('message', (evt) => {
|
|
3
|
+
const sendMore = channelB.send(evt.data);
|
|
4
|
+
if (sendMore === false) {
|
|
5
|
+
channelA.pause();
|
|
6
|
+
channelA.addEventListener('drain', () => {
|
|
7
|
+
channelA.resume();
|
|
8
|
+
}, {
|
|
9
|
+
once: true
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
});
|
|
13
|
+
channelB.addEventListener('message', (evt) => {
|
|
14
|
+
const sendMore = channelA.send(evt.data);
|
|
15
|
+
if (sendMore === false) {
|
|
16
|
+
channelB.pause();
|
|
17
|
+
channelB.addEventListener('drain', () => {
|
|
18
|
+
channelB.resume();
|
|
19
|
+
}, {
|
|
20
|
+
once: true
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,QAAQ,CAAE,QAAuB,EAAE,QAAuB;IACxE,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE;QAC3C,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAExC,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;YACvB,QAAQ,CAAC,KAAK,EAAE,CAAA;YAEhB,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;gBACtC,QAAQ,CAAC,MAAM,EAAE,CAAA;YACnB,CAAC,EAAE;gBACD,IAAI,EAAE,IAAI;aACX,CAAC,CAAA;QACJ,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE;QAC3C,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAExC,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;YACvB,QAAQ,CAAC,KAAK,EAAE,CAAA;YAEhB,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;gBACtC,QAAQ,CAAC,MAAM,EAAE,CAAA;YACnB,CAAC,EAAE;gBACD,IAAI,EAAE,IAAI;aACX,CAAC,CAAA;QACJ,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC"}
|
package/dist/src/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,qBAAqB,CAAA;AACzC,eAAO,MAAM,IAAI,cAAc,CAAA"}
|
package/dist/src/version.js
CHANGED
package/dist/src/version.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,kBAAkB,CAAA;AACzC,MAAM,CAAC,MAAM,IAAI,GAAG,WAAW,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "libp2p",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.10.0-8484de8a2",
|
|
4
4
|
"description": "JavaScript implementation of libp2p, a modular peer to peer network stack",
|
|
5
5
|
"license": "Apache-2.0 OR MIT",
|
|
6
6
|
"homepage": "https://github.com/libp2p/js-libp2p/tree/main/packages/libp2p#readme",
|
|
@@ -80,46 +80,42 @@
|
|
|
80
80
|
"dependencies": {
|
|
81
81
|
"@chainsafe/is-ip": "^2.1.0",
|
|
82
82
|
"@chainsafe/netmask": "^2.0.0",
|
|
83
|
-
"@libp2p/crypto": "
|
|
84
|
-
"@libp2p/interface": "
|
|
85
|
-
"@libp2p/interface-internal": "
|
|
86
|
-
"@libp2p/logger": "
|
|
87
|
-
"@libp2p/multistream-select": "
|
|
88
|
-
"@libp2p/peer-collections": "
|
|
89
|
-
"@libp2p/peer-id": "
|
|
90
|
-
"@libp2p/peer-store": "
|
|
91
|
-
"@libp2p/utils": "
|
|
83
|
+
"@libp2p/crypto": "5.1.8-8484de8a2",
|
|
84
|
+
"@libp2p/interface": "2.11.0-8484de8a2",
|
|
85
|
+
"@libp2p/interface-internal": "2.3.19-8484de8a2",
|
|
86
|
+
"@libp2p/logger": "5.2.0-8484de8a2",
|
|
87
|
+
"@libp2p/multistream-select": "6.0.29-8484de8a2",
|
|
88
|
+
"@libp2p/peer-collections": "6.0.35-8484de8a2",
|
|
89
|
+
"@libp2p/peer-id": "5.1.9-8484de8a2",
|
|
90
|
+
"@libp2p/peer-store": "11.2.7-8484de8a2",
|
|
91
|
+
"@libp2p/utils": "6.7.2-8484de8a2",
|
|
92
92
|
"@multiformats/dns": "^1.0.6",
|
|
93
|
-
"@multiformats/multiaddr": "^
|
|
94
|
-
"@multiformats/multiaddr-matcher": "^
|
|
93
|
+
"@multiformats/multiaddr": "^13.0.1",
|
|
94
|
+
"@multiformats/multiaddr-matcher": "^3.0.1",
|
|
95
95
|
"any-signal": "^4.1.1",
|
|
96
|
-
"datastore-core": "^10.0.
|
|
97
|
-
"interface-datastore": "^8.3.
|
|
98
|
-
"it-
|
|
99
|
-
"it-
|
|
100
|
-
"it-parallel": "^3.0.11",
|
|
96
|
+
"datastore-core": "^10.0.4",
|
|
97
|
+
"interface-datastore": "^8.3.2",
|
|
98
|
+
"it-merge": "^3.0.12",
|
|
99
|
+
"it-parallel": "^3.0.13",
|
|
101
100
|
"main-event": "^1.0.1",
|
|
102
|
-
"multiformats": "^13.
|
|
101
|
+
"multiformats": "^13.4.0",
|
|
103
102
|
"p-defer": "^4.0.1",
|
|
104
|
-
"p-
|
|
103
|
+
"p-event": "^6.0.1",
|
|
104
|
+
"p-retry": "^7.0.0",
|
|
105
105
|
"progress-events": "^1.0.1",
|
|
106
|
-
"race-
|
|
107
|
-
"race-signal": "^1.1.3",
|
|
106
|
+
"race-signal": "^2.0.0",
|
|
108
107
|
"uint8arrays": "^5.1.0"
|
|
109
108
|
},
|
|
110
109
|
"devDependencies": {
|
|
111
|
-
"aegir": "^47.0.
|
|
110
|
+
"aegir": "^47.0.21",
|
|
112
111
|
"delay": "^6.0.0",
|
|
113
|
-
"it-all": "^3.0.
|
|
114
|
-
"it-drain": "^3.0.
|
|
112
|
+
"it-all": "^3.0.9",
|
|
113
|
+
"it-drain": "^3.0.10",
|
|
115
114
|
"it-length-prefixed": "^10.0.1",
|
|
116
|
-
"it-map": "^3.1.
|
|
117
|
-
"it-
|
|
118
|
-
"it-stream-types": "^2.0.2",
|
|
119
|
-
"it-take": "^3.0.8",
|
|
120
|
-
"p-event": "^6.0.1",
|
|
115
|
+
"it-map": "^3.1.4",
|
|
116
|
+
"it-take": "^3.0.9",
|
|
121
117
|
"p-wait-for": "^5.0.2",
|
|
122
|
-
"sinon": "^
|
|
118
|
+
"sinon": "^21.0.0",
|
|
123
119
|
"sinon-ts": "^2.0.0",
|
|
124
120
|
"uint8arraylist": "^2.4.8",
|
|
125
121
|
"wherearewe": "^2.0.1"
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
import { isPrivateIp } from '@libp2p/utils
|
|
2
|
-
import {
|
|
3
|
-
import { multiaddr, protocols } from '@multiformats/multiaddr'
|
|
1
|
+
import { getNetConfig, isNetworkAddress, isPrivateIp, trackedMap } from '@libp2p/utils'
|
|
2
|
+
import { CODE_SNI, CODE_TLS, multiaddr } from '@multiformats/multiaddr'
|
|
4
3
|
import type { AddressManagerComponents, AddressManagerInit } from './index.js'
|
|
5
4
|
import type { Logger } from '@libp2p/interface'
|
|
6
5
|
import type { NodeAddress } from '@libp2p/interface-internal'
|
|
7
|
-
import type { Multiaddr
|
|
6
|
+
import type { Multiaddr } from '@multiformats/multiaddr'
|
|
8
7
|
|
|
9
8
|
const MAX_DATE = 8_640_000_000_000_000
|
|
10
9
|
|
|
@@ -19,13 +18,6 @@ interface DNSMapping {
|
|
|
19
18
|
lastVerified?: number
|
|
20
19
|
}
|
|
21
20
|
|
|
22
|
-
const CODEC_TLS = 0x01c0
|
|
23
|
-
const CODEC_SNI = 0x01c1
|
|
24
|
-
const CODEC_DNS = 0x35
|
|
25
|
-
const CODEC_DNS4 = 0x36
|
|
26
|
-
const CODEC_DNS6 = 0x37
|
|
27
|
-
const CODEC_DNSADDR = 0x38
|
|
28
|
-
|
|
29
21
|
export class DNSMappings {
|
|
30
22
|
private readonly log: Logger
|
|
31
23
|
private readonly mappings: Map<string, DNSMapping>
|
|
@@ -39,7 +31,12 @@ export class DNSMappings {
|
|
|
39
31
|
}
|
|
40
32
|
|
|
41
33
|
has (ma: Multiaddr): boolean {
|
|
42
|
-
const
|
|
34
|
+
const config = getNetConfig(ma)
|
|
35
|
+
let host = config.host
|
|
36
|
+
|
|
37
|
+
if ((config.type === 'ip4' || config.type === 'ip6') && config.sni != null) {
|
|
38
|
+
host = config.sni
|
|
39
|
+
}
|
|
43
40
|
|
|
44
41
|
for (const mapping of this.mappings.values()) {
|
|
45
42
|
if (mapping.domain === host) {
|
|
@@ -67,12 +64,17 @@ export class DNSMappings {
|
|
|
67
64
|
}
|
|
68
65
|
|
|
69
66
|
remove (ma: Multiaddr): boolean {
|
|
70
|
-
const
|
|
67
|
+
const config = getNetConfig(ma)
|
|
68
|
+
|
|
69
|
+
if (config.type !== 'ip4' && config.type !== 'ip6') {
|
|
70
|
+
return false
|
|
71
|
+
}
|
|
72
|
+
|
|
71
73
|
let wasConfident = false
|
|
72
74
|
|
|
73
75
|
for (const [ip, mapping] of this.mappings.entries()) {
|
|
74
|
-
if (mapping.domain ===
|
|
75
|
-
this.log('removing %s to %s DNS mapping %e', ip, mapping.domain
|
|
76
|
+
if (mapping.domain === config.sni) {
|
|
77
|
+
this.log('removing %s to %s DNS mapping %e', ip, mapping.domain)
|
|
76
78
|
this.mappings.delete(ip)
|
|
77
79
|
wasConfident = wasConfident || mapping.verified
|
|
78
80
|
}
|
|
@@ -85,37 +87,30 @@ export class DNSMappings {
|
|
|
85
87
|
const dnsMappedAddresses: NodeAddress[] = []
|
|
86
88
|
|
|
87
89
|
for (let i = 0; i < addresses.length; i++) {
|
|
88
|
-
const address = addresses[i]
|
|
89
|
-
const tuples = address.multiaddr.stringTuples()
|
|
90
|
-
const host = tuples[0][1]
|
|
90
|
+
const address = addresses[i].multiaddr
|
|
91
91
|
|
|
92
|
-
if (
|
|
92
|
+
if (!isNetworkAddress(address)) {
|
|
93
93
|
continue
|
|
94
94
|
}
|
|
95
95
|
|
|
96
|
+
const config = getNetConfig(address)
|
|
97
|
+
|
|
96
98
|
for (const [ip, mapping] of this.mappings.entries()) {
|
|
97
|
-
if (host !== ip) {
|
|
99
|
+
if (config.host !== ip) {
|
|
98
100
|
continue
|
|
99
101
|
}
|
|
100
102
|
|
|
101
103
|
// insert SNI tuple after TLS tuple, if one is present
|
|
102
|
-
const
|
|
104
|
+
const maWithSni = this.maybeAddSNIComponent(address, mapping.domain)
|
|
103
105
|
|
|
104
|
-
if (
|
|
106
|
+
if (maWithSni != null) {
|
|
105
107
|
// remove the address and replace it with the version that includes
|
|
106
108
|
// the SNI tuple
|
|
107
109
|
addresses.splice(i, 1)
|
|
108
110
|
i--
|
|
109
111
|
|
|
110
112
|
dnsMappedAddresses.push({
|
|
111
|
-
multiaddr:
|
|
112
|
-
tuples.map(tuple => {
|
|
113
|
-
return [
|
|
114
|
-
protocols(tuple[0]).name,
|
|
115
|
-
tuple[1]
|
|
116
|
-
].join('/')
|
|
117
|
-
}).join('/')
|
|
118
|
-
}`),
|
|
113
|
+
multiaddr: maWithSni,
|
|
119
114
|
verified: mapping.verified,
|
|
120
115
|
type: 'dns-mapping',
|
|
121
116
|
expires: mapping.expires,
|
|
@@ -128,19 +123,30 @@ export class DNSMappings {
|
|
|
128
123
|
return dnsMappedAddresses
|
|
129
124
|
}
|
|
130
125
|
|
|
131
|
-
private
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
126
|
+
private maybeAddSNIComponent (ma: Multiaddr, domain: string): Multiaddr | undefined {
|
|
127
|
+
const components = ma.getComponents()
|
|
128
|
+
|
|
129
|
+
for (let j = 0; j < components.length; j++) {
|
|
130
|
+
if (components[j].code === CODE_TLS && components[j + 1]?.code !== CODE_SNI) {
|
|
131
|
+
components.splice(j + 1, 0, {
|
|
132
|
+
name: 'sni',
|
|
133
|
+
code: CODE_SNI,
|
|
134
|
+
value: domain
|
|
135
|
+
})
|
|
136
|
+
|
|
137
|
+
return multiaddr(components)
|
|
136
138
|
}
|
|
137
139
|
}
|
|
138
|
-
|
|
139
|
-
return false
|
|
140
140
|
}
|
|
141
141
|
|
|
142
142
|
confirm (ma: Multiaddr, ttl: number): boolean {
|
|
143
|
-
const
|
|
143
|
+
const config = getNetConfig(ma)
|
|
144
|
+
let host = config.host
|
|
145
|
+
|
|
146
|
+
if ((config.type === 'ip4' || config.type === 'ip6') && config.sni != null) {
|
|
147
|
+
host = config.sni
|
|
148
|
+
}
|
|
149
|
+
|
|
144
150
|
let startingConfidence = false
|
|
145
151
|
|
|
146
152
|
for (const [ip, mapping] of this.mappings.entries()) {
|
|
@@ -157,7 +163,13 @@ export class DNSMappings {
|
|
|
157
163
|
}
|
|
158
164
|
|
|
159
165
|
unconfirm (ma: Multiaddr, ttl: number): boolean {
|
|
160
|
-
const
|
|
166
|
+
const config = getNetConfig(ma)
|
|
167
|
+
|
|
168
|
+
if (config.type !== 'ip4' && config.type !== 'ip6') {
|
|
169
|
+
return false
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
const host = config.sni ?? config.host
|
|
161
173
|
let wasConfident = false
|
|
162
174
|
|
|
163
175
|
for (const [ip, mapping] of this.mappings.entries()) {
|
|
@@ -171,16 +183,4 @@ export class DNSMappings {
|
|
|
171
183
|
|
|
172
184
|
return wasConfident
|
|
173
185
|
}
|
|
174
|
-
|
|
175
|
-
private findHost (ma: Multiaddr): string | undefined {
|
|
176
|
-
for (const tuple of ma.stringTuples()) {
|
|
177
|
-
if (tuple[0] === CODEC_SNI) {
|
|
178
|
-
return tuple[1]
|
|
179
|
-
}
|
|
180
|
-
|
|
181
|
-
if (tuple[0] === CODEC_DNS || tuple[0] === CODEC_DNS4 || tuple[0] === CODEC_DNS6 || tuple[0] === CODEC_DNSADDR) {
|
|
182
|
-
return tuple[1]
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
}
|
|
186
186
|
}
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
/* eslint-disable complexity */
|
|
2
2
|
import { isIPv4 } from '@chainsafe/is-ip'
|
|
3
3
|
import { peerIdFromString } from '@libp2p/peer-id'
|
|
4
|
-
import { debounce } from '@libp2p/utils
|
|
5
|
-
import {
|
|
6
|
-
import { isPrivateIp } from '@libp2p/utils/private-ip'
|
|
7
|
-
import { multiaddr } from '@multiformats/multiaddr'
|
|
4
|
+
import { debounce, createScalableCuckooFilter, isPrivateIp, getNetConfig, isNetworkAddress, isLoopback } from '@libp2p/utils'
|
|
5
|
+
import { CODE_P2P, multiaddr } from '@multiformats/multiaddr'
|
|
8
6
|
import { QUIC_V1, TCP, WebSockets, WebSocketsSecure } from '@multiformats/multiaddr-matcher'
|
|
9
7
|
import { DNSMappings } from './dns-mappings.js'
|
|
10
8
|
import { IPMappings } from './ip-mappings.js'
|
|
@@ -12,7 +10,7 @@ import { ObservedAddresses } from './observed-addresses.js'
|
|
|
12
10
|
import { TransportAddresses } from './transport-addresses.js'
|
|
13
11
|
import type { ComponentLogger, Libp2pEvents, Logger, PeerId, PeerStore, Metrics } from '@libp2p/interface'
|
|
14
12
|
import type { AddressManager as AddressManagerInterface, TransportManager, NodeAddress, ConfirmAddressOptions } from '@libp2p/interface-internal'
|
|
15
|
-
import type { Filter } from '@libp2p/utils
|
|
13
|
+
import type { Filter } from '@libp2p/utils'
|
|
16
14
|
import type { Multiaddr } from '@multiformats/multiaddr'
|
|
17
15
|
import type { TypedEventTarget } from 'main-event'
|
|
18
16
|
|
|
@@ -101,7 +99,7 @@ const defaultAddressFilter = (addrs: Multiaddr[]): Multiaddr[] => addrs
|
|
|
101
99
|
* If the passed multiaddr contains the passed peer id, remove it
|
|
102
100
|
*/
|
|
103
101
|
function stripPeerId (ma: Multiaddr, peerId: PeerId): Multiaddr {
|
|
104
|
-
const observedPeerIdStr = ma.
|
|
102
|
+
const observedPeerIdStr = ma.getComponents().findLast(c => c.code === CODE_P2P)?.value
|
|
105
103
|
|
|
106
104
|
// strip our peer id if it has been passed
|
|
107
105
|
if (observedPeerIdStr != null) {
|
|
@@ -177,7 +175,7 @@ export class AddressManager implements AddressManagerInterface {
|
|
|
177
175
|
const addrs = this.getAddresses()
|
|
178
176
|
.map(ma => {
|
|
179
177
|
// strip our peer id if it is present
|
|
180
|
-
if (ma.
|
|
178
|
+
if (ma.getComponents().findLast(c => c.code === CODE_P2P)?.value === this.components.peerId.toString()) {
|
|
181
179
|
return ma.decapsulate(`/p2p/${this.components.peerId.toString()}`)
|
|
182
180
|
}
|
|
183
181
|
|
|
@@ -224,8 +222,22 @@ export class AddressManager implements AddressManagerInterface {
|
|
|
224
222
|
* Add peer observed addresses
|
|
225
223
|
*/
|
|
226
224
|
addObservedAddr (addr: Multiaddr): void {
|
|
227
|
-
const
|
|
228
|
-
|
|
225
|
+
const config = getNetConfig(addr)
|
|
226
|
+
let socketAddress: string
|
|
227
|
+
|
|
228
|
+
switch (config.type) {
|
|
229
|
+
case 'ip4': {
|
|
230
|
+
socketAddress = `${config.host}:${config.port}`
|
|
231
|
+
break
|
|
232
|
+
}
|
|
233
|
+
case 'ip6': {
|
|
234
|
+
socketAddress = `[${config.host}]:${config.port}`
|
|
235
|
+
break
|
|
236
|
+
}
|
|
237
|
+
default: {
|
|
238
|
+
return
|
|
239
|
+
}
|
|
240
|
+
}
|
|
229
241
|
|
|
230
242
|
// ignore if this address if it's been observed before
|
|
231
243
|
if (this.observedAddressFilter.has(socketAddress)) {
|
|
@@ -477,10 +489,14 @@ export class AddressManager implements AddressManagerInterface {
|
|
|
477
489
|
return false
|
|
478
490
|
}
|
|
479
491
|
|
|
480
|
-
|
|
492
|
+
if (!isNetworkAddress(ma)) {
|
|
493
|
+
return false
|
|
494
|
+
}
|
|
495
|
+
|
|
496
|
+
const config = getNetConfig(ma)
|
|
481
497
|
|
|
482
498
|
// only public IPv4 addresses
|
|
483
|
-
if (
|
|
499
|
+
if (config.type !== 'ip4' || isPrivateIp(config.host) === true) {
|
|
484
500
|
return false
|
|
485
501
|
}
|
|
486
502
|
|
|
@@ -502,7 +518,7 @@ export class AddressManager implements AddressManagerInterface {
|
|
|
502
518
|
const transportListeners = listeners.filter(listener => {
|
|
503
519
|
return listener.getAddrs().filter(ma => {
|
|
504
520
|
// only IPv4 addresses of the matcher type
|
|
505
|
-
return ma
|
|
521
|
+
return getNetConfig(ma).type === 'ip4' && matcher(ma)
|
|
506
522
|
}).length > 0
|
|
507
523
|
})
|
|
508
524
|
|
|
@@ -516,23 +532,27 @@ export class AddressManager implements AddressManagerInterface {
|
|
|
516
532
|
// we have one listener which listens on one port so whatever the external
|
|
517
533
|
// NAT port mapping is, it should be for this listener
|
|
518
534
|
const linkLocalAddr = transportListeners[0].getAddrs().filter(ma => {
|
|
519
|
-
return ma
|
|
535
|
+
return !isLoopback(ma)
|
|
520
536
|
}).pop()
|
|
521
537
|
|
|
522
538
|
if (linkLocalAddr == null) {
|
|
523
539
|
continue
|
|
524
540
|
}
|
|
525
541
|
|
|
526
|
-
const linkLocalOptions = linkLocalAddr
|
|
542
|
+
const linkLocalOptions = getNetConfig(linkLocalAddr)
|
|
543
|
+
|
|
544
|
+
if (linkLocalOptions.port == null) {
|
|
545
|
+
return false
|
|
546
|
+
}
|
|
527
547
|
|
|
528
548
|
// upgrade observed address to IP mapping
|
|
529
549
|
this.observed.remove(ma)
|
|
530
550
|
this.ipMappings.add(
|
|
531
551
|
linkLocalOptions.host,
|
|
532
552
|
linkLocalOptions.port,
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
553
|
+
config.host,
|
|
554
|
+
config.port,
|
|
555
|
+
config.protocol
|
|
536
556
|
)
|
|
537
557
|
|
|
538
558
|
return true
|