diff --git a/core/node/libp2p/libp2p.go b/core/node/libp2p/libp2p.go index ad350501e018..235c76218898 100644 --- a/core/node/libp2p/libp2p.go +++ b/core/node/libp2p/libp2p.go @@ -528,12 +528,19 @@ func AutoNATService(mctx helpers.MetricsCtx, lc fx.Lifecycle, cfg *config.Config if !cfg.Swarm.EnableAutoNATService { return nil } - var opts []libp2p.Option + + // collect private net option in case swarm.key is presented + opts, _, err := P2PPNet(repo) + if err != nil { + // swarm key exists but was failed to decode + return err + } + if cfg.Experimental.QUIC { - opts = append(opts, libp2p.DefaultTransports, libp2p.Transport(libp2pquic.NewTransport)) + opts.Opts = append(opts.Opts, libp2p.DefaultTransports, libp2p.Transport(libp2pquic.NewTransport)) } - _, err := autonat.NewAutoNATService(helpers.LifecycleCtx(mctx, lc), host, opts...) + _, err = autonat.NewAutoNATService(helpers.LifecycleCtx(mctx, lc), host, opts.Opts...) return err }