libp2p: add QUIC and WebTransport to default listen addresses
This commit is contained in:
parent
ceb3f1e41e
commit
0a064c1b3d
@ -38,7 +38,7 @@
|
|||||||
#
|
#
|
||||||
# type: []string
|
# type: []string
|
||||||
# env var: LOTUS_LIBP2P_LISTENADDRESSES
|
# env var: LOTUS_LIBP2P_LISTENADDRESSES
|
||||||
#ListenAddresses = ["/ip4/0.0.0.0/tcp/0", "/ip6/::/tcp/0"]
|
#ListenAddresses = ["/ip4/0.0.0.0/tcp/0", "/ip6/::/tcp/0", "/ip4/0.0.0.0/udp/0/quic-v1", "/ip6/::/udp/0/quic-v1", "/ip4/0.0.0.0/udp/0/quic-v1/webtransport", "/ip6/::/udp/0/quic-v1/webtransport"]
|
||||||
|
|
||||||
# Addresses to explicitally announce to other peers. If not specified,
|
# Addresses to explicitally announce to other peers. If not specified,
|
||||||
# all interface addresses are announced
|
# all interface addresses are announced
|
||||||
|
@ -38,7 +38,7 @@
|
|||||||
#
|
#
|
||||||
# type: []string
|
# type: []string
|
||||||
# env var: LOTUS_LIBP2P_LISTENADDRESSES
|
# env var: LOTUS_LIBP2P_LISTENADDRESSES
|
||||||
#ListenAddresses = ["/ip4/0.0.0.0/tcp/0", "/ip6/::/tcp/0"]
|
#ListenAddresses = ["/ip4/0.0.0.0/tcp/0", "/ip6/::/tcp/0", "/ip4/0.0.0.0/udp/0/quic-v1", "/ip6/::/udp/0/quic-v1", "/ip4/0.0.0.0/udp/0/quic-v1/webtransport", "/ip6/::/udp/0/quic-v1/webtransport"]
|
||||||
|
|
||||||
# Addresses to explicitally announce to other peers. If not specified,
|
# Addresses to explicitally announce to other peers. If not specified,
|
||||||
# all interface addresses are announced
|
# all interface addresses are announced
|
||||||
|
@ -220,14 +220,17 @@ func TestNetBlockIPAddr(t *testing.T) {
|
|||||||
firstAddrInfo, _ := firstNode.NetAddrsListen(ctx)
|
firstAddrInfo, _ := firstNode.NetAddrsListen(ctx)
|
||||||
secondAddrInfo, _ := secondNode.NetAddrsListen(ctx)
|
secondAddrInfo, _ := secondNode.NetAddrsListen(ctx)
|
||||||
|
|
||||||
var secondNodeIPs []string
|
secondNodeIPsMap := map[string]struct{}{} // so we can deduplicate
|
||||||
|
|
||||||
for _, addr := range secondAddrInfo.Addrs {
|
for _, addr := range secondAddrInfo.Addrs {
|
||||||
ip, err := manet.ToIP(addr)
|
ip, err := manet.ToIP(addr)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
secondNodeIPs = append(secondNodeIPs, ip.String())
|
secondNodeIPsMap[ip.String()] = struct{}{}
|
||||||
|
}
|
||||||
|
var secondNodeIPs []string
|
||||||
|
for s := range secondNodeIPsMap {
|
||||||
|
secondNodeIPs = append(secondNodeIPs, s)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Sanity check that we're not already connected somehow
|
// Sanity check that we're not already connected somehow
|
||||||
@ -243,6 +246,8 @@ func TestNetBlockIPAddr(t *testing.T) {
|
|||||||
list, err := firstNode.NetBlockList(ctx)
|
list, err := firstNode.NetBlockList(ctx)
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
|
fmt.Println(list.IPAddrs)
|
||||||
|
fmt.Println(secondNodeIPs)
|
||||||
require.Equal(t, len(list.IPAddrs), len(secondNodeIPs), "expected %d blocked IPs", len(secondNodeIPs))
|
require.Equal(t, len(list.IPAddrs), len(secondNodeIPs), "expected %d blocked IPs", len(secondNodeIPs))
|
||||||
for _, blockedIP := range list.IPAddrs {
|
for _, blockedIP := range list.IPAddrs {
|
||||||
found := false
|
found := false
|
||||||
@ -256,7 +261,8 @@ func TestNetBlockIPAddr(t *testing.T) {
|
|||||||
require.True(t, found, "blocked IP %s is not one of secondNodeIPs", blockedIP)
|
require.True(t, found, "blocked IP %s is not one of secondNodeIPs", blockedIP)
|
||||||
}
|
}
|
||||||
|
|
||||||
require.Error(t, secondNode.NetConnect(ctx, firstAddrInfo), "shouldn't be able to connect to second node")
|
// a QUIC connection might still succeed when gated, but will be killed right after the handshake
|
||||||
|
_ = secondNode.NetConnect(ctx, firstAddrInfo)
|
||||||
connectedness, err = secondNode.NetConnectedness(ctx, firstAddrInfo.ID)
|
connectedness, err = secondNode.NetConnectedness(ctx, firstAddrInfo.ID)
|
||||||
require.NoError(t, err, "failed to determine connectedness")
|
require.NoError(t, err, "failed to determine connectedness")
|
||||||
require.NotEqual(t, connectedness, network.Connected)
|
require.NotEqual(t, connectedness, network.Connected)
|
||||||
|
@ -57,6 +57,10 @@ func defCommon() Common {
|
|||||||
ListenAddresses: []string{
|
ListenAddresses: []string{
|
||||||
"/ip4/0.0.0.0/tcp/0",
|
"/ip4/0.0.0.0/tcp/0",
|
||||||
"/ip6/::/tcp/0",
|
"/ip6/::/tcp/0",
|
||||||
|
"/ip4/0.0.0.0/udp/0/quic-v1",
|
||||||
|
"/ip6/::/udp/0/quic-v1",
|
||||||
|
"/ip4/0.0.0.0/udp/0/quic-v1/webtransport",
|
||||||
|
"/ip6/::/udp/0/quic-v1/webtransport",
|
||||||
},
|
},
|
||||||
AnnounceAddresses: []string{},
|
AnnounceAddresses: []string{},
|
||||||
NoAnnounceAddresses: []string{},
|
NoAnnounceAddresses: []string{},
|
||||||
|
Loading…
Reference in New Issue
Block a user