cmd/geth, p2p: add support for custom discovery UDP port (#24979)

This adds a new flag to set the discovery port to be different from
the TCP listener port.

Co-authored-by: Felix Lange <fjl@twurst.com>
This commit is contained in:
zeim839
2022-06-28 17:25:47 +02:00
committed by GitHub
co-authored by Felix Lange
parent 1438e7c324
commit 9a5c1000c7
3 changed files with 25 additions and 3 deletions
+11 -2
View File
@@ -835,6 +835,12 @@ var (
Usage: "Sets DNS discovery entry points (use \"\" to disable DNS)",
Category: flags.NetworkingCategory,
}
DiscoveryPortFlag = &cli.IntFlag{
Name: "discovery.port",
Usage: "Use a custom UDP port for P2P discovery",
Value: 30303,
Category: flags.NetworkingCategory,
}
// Console
JSpathFlag = &flags.DirectoryFlag{
@@ -1116,12 +1122,15 @@ func setBootstrapNodesV5(ctx *cli.Context, cfg *p2p.Config) {
}
}
// setListenAddress creates a TCP listening address string from set command
// line flags.
// setListenAddress creates TCP/UDP listening address strings from set command
// line flags
func setListenAddress(ctx *cli.Context, cfg *p2p.Config) {
if ctx.IsSet(ListenPortFlag.Name) {
cfg.ListenAddr = fmt.Sprintf(":%d", ctx.Int(ListenPortFlag.Name))
}
if ctx.IsSet(DiscoveryPortFlag.Name) {
cfg.DiscAddr = fmt.Sprintf(":%d", ctx.Int(DiscoveryPortFlag.Name))
}
}
// setNAT creates a port mapper from command line flags.