Merge pull request #10854 from filecoin-project/revert-10852-sbansal/revert-10848
Revert "Revert "libp2p: add QUIC and WebTransport to default listen addresses""
This commit is contained in:
commit
b997f4acec
@ -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
|
||||||
|
2
go.mod
2
go.mod
@ -41,7 +41,7 @@ require (
|
|||||||
github.com/filecoin-project/go-data-transfer/v2 v2.0.0-rc7
|
github.com/filecoin-project/go-data-transfer/v2 v2.0.0-rc7
|
||||||
github.com/filecoin-project/go-fil-commcid v0.1.0
|
github.com/filecoin-project/go-fil-commcid v0.1.0
|
||||||
github.com/filecoin-project/go-fil-commp-hashhash v0.1.0
|
github.com/filecoin-project/go-fil-commp-hashhash v0.1.0
|
||||||
github.com/filecoin-project/go-fil-markets v1.28.1
|
github.com/filecoin-project/go-fil-markets v1.28.2
|
||||||
github.com/filecoin-project/go-jsonrpc v0.3.1
|
github.com/filecoin-project/go-jsonrpc v0.3.1
|
||||||
github.com/filecoin-project/go-padreader v0.0.1
|
github.com/filecoin-project/go-padreader v0.0.1
|
||||||
github.com/filecoin-project/go-paramfetch v0.0.4
|
github.com/filecoin-project/go-paramfetch v0.0.4
|
||||||
|
4
go.sum
4
go.sum
@ -321,8 +321,8 @@ github.com/filecoin-project/go-fil-commcid v0.1.0 h1:3R4ds1A9r6cr8mvZBfMYxTS88Oq
|
|||||||
github.com/filecoin-project/go-fil-commcid v0.1.0/go.mod h1:Eaox7Hvus1JgPrL5+M3+h7aSPHc0cVqpSxA+TxIEpZQ=
|
github.com/filecoin-project/go-fil-commcid v0.1.0/go.mod h1:Eaox7Hvus1JgPrL5+M3+h7aSPHc0cVqpSxA+TxIEpZQ=
|
||||||
github.com/filecoin-project/go-fil-commp-hashhash v0.1.0 h1:imrrpZWEHRnNqqv0tN7LXep5bFEVOVmQWHJvl2mgsGo=
|
github.com/filecoin-project/go-fil-commp-hashhash v0.1.0 h1:imrrpZWEHRnNqqv0tN7LXep5bFEVOVmQWHJvl2mgsGo=
|
||||||
github.com/filecoin-project/go-fil-commp-hashhash v0.1.0/go.mod h1:73S8WSEWh9vr0fDJVnKADhfIv/d6dCbAGaAGWbdJEI8=
|
github.com/filecoin-project/go-fil-commp-hashhash v0.1.0/go.mod h1:73S8WSEWh9vr0fDJVnKADhfIv/d6dCbAGaAGWbdJEI8=
|
||||||
github.com/filecoin-project/go-fil-markets v1.28.1 h1:2iq1o/ZY1RSbVU8OX7nwWO66SYtdjKEngshc4Jeua/Y=
|
github.com/filecoin-project/go-fil-markets v1.28.2 h1:Ev9o8BYow+lo97Bwc6oOmZ2OxdiHeIDCQsfF/w/Vldc=
|
||||||
github.com/filecoin-project/go-fil-markets v1.28.1/go.mod h1:qy9LNu9t77I184VB6Pa4WKRtGfB8Vl0t8zfOLHkDqWY=
|
github.com/filecoin-project/go-fil-markets v1.28.2/go.mod h1:qy9LNu9t77I184VB6Pa4WKRtGfB8Vl0t8zfOLHkDqWY=
|
||||||
github.com/filecoin-project/go-hamt-ipld v0.1.5 h1:uoXrKbCQZ49OHpsTCkrThPNelC4W3LPEk0OrS/ytIBM=
|
github.com/filecoin-project/go-hamt-ipld v0.1.5 h1:uoXrKbCQZ49OHpsTCkrThPNelC4W3LPEk0OrS/ytIBM=
|
||||||
github.com/filecoin-project/go-hamt-ipld v0.1.5/go.mod h1:6Is+ONR5Cd5R6XZoCse1CWaXZc0Hdb/JeX+EQCQzX24=
|
github.com/filecoin-project/go-hamt-ipld v0.1.5/go.mod h1:6Is+ONR5Cd5R6XZoCse1CWaXZc0Hdb/JeX+EQCQzX24=
|
||||||
github.com/filecoin-project/go-hamt-ipld/v2 v2.0.0 h1:b3UDemBYN2HNfk3KOXNuxgTTxlWi3xVvbQP0IT38fvM=
|
github.com/filecoin-project/go-hamt-ipld/v2 v2.0.0 h1:b3UDemBYN2HNfk3KOXNuxgTTxlWi3xVvbQP0IT38fvM=
|
||||||
|
@ -5,6 +5,7 @@ import (
|
|||||||
"context"
|
"context"
|
||||||
"fmt"
|
"fmt"
|
||||||
"testing"
|
"testing"
|
||||||
|
"time"
|
||||||
|
|
||||||
"github.com/libp2p/go-libp2p/core/network"
|
"github.com/libp2p/go-libp2p/core/network"
|
||||||
"github.com/libp2p/go-libp2p/core/peer"
|
"github.com/libp2p/go-libp2p/core/peer"
|
||||||
@ -220,14 +221,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 +247,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,10 +262,14 @@ 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)
|
||||||
|
|
||||||
|
require.Eventually(t, func() bool {
|
||||||
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)
|
return connectedness != network.Connected
|
||||||
|
}, time.Second*5, time.Millisecond*10)
|
||||||
|
|
||||||
// stm: @NETWORK_COMMON_BLOCK_REMOVE_001
|
// stm: @NETWORK_COMMON_BLOCK_REMOVE_001
|
||||||
err = firstNode.NetBlockRemove(ctx, api.NetBlockList{IPAddrs: secondNodeIPs})
|
err = firstNode.NetBlockRemove(ctx, api.NetBlockList{IPAddrs: secondNodeIPs})
|
||||||
|
@ -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