以下代码是以太坊主网配置文件(geth.toml)的完整内容:
[Eth]NetworkId = 0SyncMode = "snap"EthDiscoveryURLs = []SnapDiscoveryURLs = []NoPruning = falseNoPrefetch = falseTxLookupLimit = 2350000TransactionHistory = 2350000StateHistory = 90000LightPeers = 100DatabaseCache = 512DatabaseFreezer = ""TrieCleanCache = 154TrieDirtyCache = 256TrieTimeout = 3600000000000SnapshotCache = 102Preimages = falseFilterLogCacheSize = 32EnablePreimageRecording = falseVMTrace = ""VMTraceJsonConfig = ""RPCGasCap = 50000000RPCEVMTimeout = 5000000000RPCTxFeeCap = 1e+00[Eth.Miner]GasCeil = 30000000GasPrice = 1000000Recommit = 2000000000[Eth.TxPool]Locals = []NoLocals = falseJournal = "transactions.rlp"Rejournal = 3600000000000PriceLimit = 1PriceBump = 10AccountSlots = 16GlobalSlots = 5120AccountQueue = 64GlobalQueue = 1024Lifetime = 10800000000000[Eth.BlobPool]Datadir = "blobpool"Datacap = 2684354560PriceBump = 100[Eth.GPO]Blocks = 20Percentile = 60MaxHeaderHistory = 1024MaxBlockHistory = 1024MaxPrice = 500000000000IgnorePrice = 2[Node]DataDir = "/root/.ethereum"IPCPath = "geth.ipc"HTTPHost = ""HTTPPort = 8545HTTPVirtualHosts = ["localhost"]HTTPModules = ["net", "web3", "eth"]AuthAddr = "localhost"AuthPort = 8551AuthVirtualHosts = ["localhost"]WSHost = ""WSPort = 8546WSModules = ["net", "web3", "eth"]GraphQLVirtualHosts = ["localhost"]BatchRequestLimit = 1000BatchResponseMaxSize = 25000000[Node.P2P]MaxPeers = 50NoDiscovery = falseDiscoveryV4 = trueBootstrapNodes = ["enode://d860a01f9722d78051619d1e2351aba3f43f943f6f00718d1b9baa4101932a1f5011f16bb2b1bb35db20d6fe28fa0bf09636d26a87d31de9ec6203eeedb1f666@18.138.108.67:30303", "enode://22a8232c3abc76a16ae9d6c3b164f98775fe226f0917b0ca871128a74a8e9630b458460865bab457221f1d448dd9791d24c4e5d88786180ac185df813a68d4de@3.209.45.79:30303", "enode://2b252ab6a1d0f971d9722cb839a42cb81db019ba44c08754628ab4a823487071b5695317c8ccd085219c3a03af063495b2f1da8d18218da2d6a82981b45e6ffc@65.108.70.101:30303", "enode://4aeb4ab6c14b23e2c4cfdce879c04b0748a20d8e9b59e25ded2a08143e265c6c25936e74cbc8e641e3312ca288673d91f2f93f8e277de3cfa444ecdaaf982052@157.90.35.166:30303"]BootstrapNodesV5 = ["enr:-KG4QMOEswP62yzDjSwWS4YEjtTZ5PO6r65CPqYBkgTTkrpaedQ8uEUo1uMALtJIvb2w_WWEVmg5yt1UAuK1ftxUU7QDhGV0aDKQu6TalgMAAAD__________4JpZIJ2NIJpcIQEnfA2iXNlY3AyNTZrMaEDfol8oLr6XJ7FsdAYE7lpJhKMls4G_v6qQOGKJUWGb_uDdGNwgiMog3VkcIIjKA", "enr:-KG4QF4B5WrlFcRhUU6dZETwY5ZzAXnA0vGC__L1Kdw602nDZwXSTs5RFXFIFUnbQJmhNGVU6OIX7KVrCSTODsz1tK4DhGV0aDKQu6TalgMAAAD__________4JpZIJ2NIJpcIQExNYEiXNlY3AyNTZrMaECQmM9vp7KhaXhI-nqL_R0ovULLCFSFTa9CPPSdb1zPX6DdGNwgiMog3VkcIIjKA", "enr:-Ku4QImhMc1z8yCiNJ1TyUxdcfNucje3BGwEHzodEZUan8PherEo4sF7pPHPSIB1NNuSg5fZy7qFsjmUKs2ea1Whi0EBh2F0dG5ldHOIAAAAAAAAAACEZXRoMpD1pf1CAAAAAP__________gmlkgnY0gmlwhBLf22SJc2VjcDI1NmsxoQOVphkDqal4QzPMksc5wnpuC3gvSC8AfbFOnZY_On34wIN1ZHCCIyg", "enr:-Ku4QP2xDnEtUXIjzJ_DhlCRN9SN99RYQPJL92TMlSv7U5C1YnYLjwOQHgZIUXw6c-BvRg2Yc2QsZxxoS_pPRVe0yK8Bh2F0dG5ldHOIAAAAAAAAAACEZXRoMpD1pf1CAAAAAP__________gmlkgnY0gmlwhBLf22SJc2VjcDI1NmsxoQMeFF5GrS7UZpAH2Ly84aLK-TyvH-dRo0JM1i8yygH50YN1ZHCCJxA", "enr:-Ku4QPp9z1W4tAO8Ber_NQierYaOStqhDqQdOPY3bB3jDgkjcbk6YrEnVYIiCBbTxuar3CzS528d2iE7TdJsrL-dEKoBh2F0dG5ldHOIAAAAAAAAAACEZXRoMpD1pf1CAAAAAP__________gmlkgnY0gmlwhBLf22SJc2VjcDI1NmsxoQMw5fqqkw2hHC4F5HZZDPsNmPdB1Gi8JPQK7pRc9XHh-oN1ZHCCKvg", "enr:-Le4QPUXJS2BTORXxyx2Ia-9ae4YqA_JWX3ssj4E_J-3z1A-HmFGrU8BpvpqhNabayXeOZ2Nq_sbeDgtzMJpLLnXFgAChGV0aDKQtTA_KgEAAAAAIgEAAAAAAIJpZIJ2NIJpcISsaa0Zg2lwNpAkAIkHAAAAAPA8kv_-awoTiXNlY3AyNTZrMaEDHAD2JKYevx89W0CcFJFiskdcEzkH_Wdv9iW42qLK79ODdWRwgiMohHVkcDaCI4I", "enr:-Le4QLHZDSvkLfqgEo8IWGG96h6mxwe_PsggC20CL3neLBjfXLGAQFOPSltZ7oP6ol54OvaNqO02Rnvb8YmDR274uq8ChGV0aDKQtTA_KgEAAAAAIgEAAAAAAIJpZIJ2NIJpcISLosQxg2lwNpAqAX4AAAAAAPA8kv_-ax65iXNlY3AyNTZrMaEDBJj7_dLFACaxBfaI8KZTh_SSJUjhyAyfshimvSqo22WDdWRwgiMohHVkcDaCI4I", "enr:-Le4QH6LQrusDbAHPjU_HcKOuMeXfdEB5NJyXgHWFadfHgiySqeDyusQMvfphdYWOzuSZO9Uq2AMRJR5O4ip7OvVma8BhGV0aDKQtTA_KgEAAAAAIgEAAAAAAIJpZIJ2NIJpcISLY9ncg2lwNpAkAh8AgQIBAAAAAAAAAAmXiXNlY3AyNTZrMaECDYCZTZEksF-kmgPholqgVt8IXr-8L7Nu7YrZ7HUpgxmDdWRwgiMohHVkcDaCI4I", "enr:-Le4QIqLuWybHNONr933Lk0dcMmAB5WgvGKRyDihy1wHDIVlNuuztX62W51voT4I8qD34GcTEOTmag1bcdZ_8aaT4NUBhGV0aDKQtTA_KgEAAAAAIgEAAAAAAIJpZIJ2NIJpcISLY04ng2lwNpAkAh8AgAIBAAAAAAAAAA-fiXNlY3AyNTZrMaEDscnRV6n1m-D9ID5UsURk0jsoKNXt1TIrj8uKOGW6iluDdWRwgiMohHVkcDaCI4I", "enr:-Ku4QHqVeJ8PPICcWk1vSn_XcSkjOkNiTg6Fmii5j6vUQgvzMc9L1goFnLKgXqBJspJjIsB91LTOleFmyWWrFVATGngBh2F0dG5ldHOIAAAAAAAAAACEZXRoMpC1MD8qAAAAAP__________gmlkgnY0gmlwhAMRHkWJc2VjcDI1NmsxoQKLVXFOhp2uX6jeT0DvvDpPcU8FWMjQdR4wMuORMhpX24N1ZHCCIyg", "enr:-Ku4QG-2_Md3sZIAUebGYT6g0SMskIml77l6yR-M_JXc-UdNHCmHQeOiMLbylPejyJsdAPsTHJyjJB2sYGDLe0dn8uYBh2F0dG5ldHOIAAAAAAAAAACEZXRoMpC1MD8qAAAAAP__________gmlkgnY0gmlwhBLY-NyJc2VjcDI1NmsxoQORcM6e19T1T9gi7jxEZjk_sjVLGFscUNqAY9obgZaxbIN1ZHCCIyg", "enr:-Ku4QPn5eVhcoF1opaFEvg1b6JNFD2rqVkHQ8HApOKK61OIcIXD127bKWgAtbwI7pnxx6cDyk_nI88TrZKQaGMZj0q0Bh2F0dG5ldHOIAAAAAAAAAACEZXRoMpC1MD8qAAAAAP__________gmlkgnY0gmlwhDayLMaJc2VjcDI1NmsxoQK2sBOLGcUb4AwuYzFuAVCaNHA-dy24UuEKkeFNgCVCsIN1ZHCCIyg", "enr:-Ku4QEWzdnVtXc2Q0ZVigfCGggOVB2Vc1ZCPEc6j21NIFLODSJbvNaef1g4PxhPwl_3kax86YPheFUSLXPRs98vvYsoBh2F0dG5ldHOIAAAAAAAAAACEZXRoMpC1MD8qAAAAAP__________gmlkgnY0gmlwhDZBrP2Jc2VjcDI1NmsxoQM6jr8Rb1ktLEsVcKAPa08wCsKUmvoQ8khiOl_SLozf9IN1ZHCCIyg", "enr:-LK4QA8FfhaAjlb_BXsXxSfiysR7R52Nhi9JBt4F8SPssu8hdE1BXQQEtVDC3qStCW60LSO7hEsVHv5zm8_6Vnjhcn0Bh2F0dG5ldHOIAAAAAAAAAACEZXRoMpC1MD8qAAAAAP__________gmlkgnY0gmlwhAN4aBKJc2VjcDI1NmsxoQJerDhsJ-KxZ8sHySMOCmTO6sHM3iCFQ6VMvLTe948MyYN0Y3CCI4yDdWRwgiOM", "enr:-LK4QKWrXTpV9T78hNG6s8AM6IO4XH9kFT91uZtFg1GcsJ6dKovDOr1jtAAFPnS2lvNltkOGA9k29BUN7lFh_sjuc9QBh2F0dG5ldHOIAAAAAAAAAACEZXRoMpC1MD8qAAAAAP__________gmlkgnY0gmlwhANAdd-Jc2VjcDI1NmsxoQLQa6ai7y9PMN5hpLe5HmiJSlYzMuzP7ZhwRiwHvqNXdoN0Y3CCI4yDdWRwgiOM"]StaticNodes = []TrustedNodes = []ListenAddr = ":30303"DiscAddr = ""EnableMsgEvents = false[Node.HTTPTimeouts]ReadTimeout = 30000000000ReadHeaderTimeout = 30000000000WriteTimeout = 30000000000IdleTimeout = 120000000000[Metrics]HTTP = "127.0.0.1"Port = 6060InfluxDBEndpoint = "http://localhost:8086"InfluxDBDatabase = "geth"InfluxDBUsername = "test"InfluxDBPassword = "test"InfluxDBTags = "host=localhost"InfluxDBToken = "test"InfluxDBBucket = "geth"InfluxDBOrganization = "geth"
以下是对这个geth.toml配置文件的详细解析:
一、[Eth] 部分
NetworkId = 0:指定以太坊网络的 ID 为 0,表示主网。SyncMode = "snap":设置同步模式为 “snap”,可能与快速同步或特定的快照同步机制相关。EthDiscoveryURLs = []:以太坊发现服务的 URL 列表为空,表示可能不使用特定的外部发现服务。SnapDiscoveryURLs = []:与快照相关的发现服务 URL 列表为空。NoPruning = false:不启用不进行状态修剪,意味着默认会进行状态修剪以节省存储空间。NoPrefetch = false:不启用不预取数据,默认可能会进行数据预取以提高性能。TxLookupLimit = 2350000:交易查找限制为 2350000,可能用于限制交易查询的范围。TransactionHistory = 2350000:交易历史记录数量限制为 2350000。StateHistory = 90000:状态历史数量限制为 90000。LightPeers = 100:轻量级节点的数量限制为 100。DatabaseCache = 512:数据库缓存大小为 512。DatabaseFreezer = "":数据库冻结器的设置为空字符串,可能表示不使用特定的冻结机制。TrieCleanCache = 154:三态字典(trie)的干净缓存大小为 154。TrieDirtyCache = 256:三态字典的脏缓存大小为 256。TrieTimeout = 3600000000000:三态字典超时时间为 3600000000000(可能是特定时间单位)。SnapshotCache = 102:快照缓存大小为 102。Preimages = false:不启用预图像记录。FilterLogCacheSize = 32:过滤器日志缓存大小为 32。EnablePreimageRecording = false:不启用预图像记录功能。VMTrace = "":虚拟机跟踪设置为空字符串,表示可能不进行特定的虚拟机跟踪。VMTraceJsonConfig = "":虚拟机跟踪的 JSON 配置为空字符串。RPCGasCap = 50000000:RPC(远程过程调用)的 gas 上限为 50000000。RPCEVMTimeout = 5000000000:RPC EVM(以太坊虚拟机)超时时间为 5000000000(可能是特定时间单位)。RPCTxFeeCap = 1e+00:RPC 交易费用上限为 1e+00。
二、[Eth.Miner] 部分
GasCeil = 30000000:矿工的 gas 上限为 30000000。GasPrice = 1000000:矿工设置的 gas 价格为 1000000。Recommit = 2000000000:重新提交的时间间隔或阈值(可能是特定时间单位)。
三、[Eth.TxPool] 部分
Locals = []:本地交易列表为空。NoLocals = false:不启用不处理本地交易。Journal = "transactions.rlp":交易日志文件名为 “transactions.rlp”。Rejournal = 3600000000000:重新记录交易日志的时间间隔(可能是特定时间单位)。PriceLimit = 1:价格限制为 1。PriceBump = 10:价格提升幅度为 10。AccountSlots = 16:账户槽数量为 16。GlobalSlots = 5120:全局槽数量为 5120。AccountQueue = 64:账户队列长度为 64。GlobalQueue = 1024:全局队列长度为 1024。Lifetime = 10800000000000:交易在交易池中存活的时间(可能是特定时间单位)。
四、[Eth.BlobPool] 部分
Datadir = "blobpool":数据目录为 “blobpool”,可能用于存储特定于 BlobPool 的数据。Datacap = 2684354560:数据容量限制为 2684354560。PriceBump = 100:价格提升幅度为 100,可能与 BlobPool 中的交易费用相关。
五、[Eth.GPO] 部分
Blocks = 20:用于 gas 价格预测的区块数量为 20。Percentile = 60:百分位数设置为 60,可能用于确定 gas 价格的统计计算。MaxHeaderHistory = 1024:最大头部历史记录数量为 1024。MaxBlockHistory = 1024:最大区块历史记录数量为 1024。MaxPrice = 500000000000:最大 gas 价格为 500000000000。IgnorePrice = 2:忽略价格的阈值为 2。
六、[Node] 部分
DataDir = "/root/.ethereum":节点的数据目录为 “/root/.ethereum”。IPCPath = "geth.ipc":进程间通信(IPC)的路径为 “geth.ipc”。HTTPHost = "":HTTP 服务的主机为空字符串,表示可能使用默认主机。HTTPPort = 8545:HTTP 服务的端口为 8545。HTTPVirtualHosts = ["localhost"]:HTTP 虚拟主机列表为 ["localhost"]。HTTPModules = ["net", "web3", "eth"]:HTTP 服务提供的模块为 ["net", "web3", "eth"]。AuthAddr = "localhost":认证服务的地址为 “localhost”。AuthPort = 8551:认证服务的端口为 8551。AuthVirtualHosts = ["localhost"]:认证虚拟主机列表为 ["localhost"]。WSHost = "":WebSocket 服务的主机为空字符串。WSPort = 8546:WebSocket 服务的端口为 8546。WSModules = ["net", "web3", "eth"]:WebSocket 服务提供的模块为 ["net", "web3", "eth"]。GraphQLVirtualHosts = ["localhost"]:GraphQL 虚拟主机列表为 ["localhost"]。BatchRequestLimit = 1000:批量请求的限制为 1000。BatchResponseMaxSize = 25000000:批量响应的最大大小为 25000000。
七、[Node.P2P] 部分
MaxPeers = 50:最大对等节点数量为 50。NoDiscovery = false:不启用不进行节点发现。DiscoveryV4 = true:启用 IPv4 节点发现。BootstrapNodes和BootstrapNodesV5:分别列出了一系列的引导节点的 enode URL,用于在节点启动时连接到网络。StaticNodes = []:静态节点列表为空。TrustedNodes = []:受信任节点列表为空。ListenAddr = ":30303":节点监听的地址为 “:30303”。DiscAddr = "":发现服务的地址为空字符串。EnableMsgEvents = false:不启用消息事件。
八、[Node.HTTPTimeouts] 部分
ReadTimeout = 30000000000:HTTP 读取超时时间为 30000000000(可能是特定时间单位)。ReadHeaderTimeout = 30000000000:HTTP 读取头部超时时间为 30000000000。WriteTimeout = 30000000000:HTTP 写入超时时间为 30000000000。IdleTimeout = 120000000000:HTTP 空闲超时时间为 120000000000。
九、[Metrics] 部分
HTTP = "127.0.0.1":指标服务的 HTTP 地址为 “127.0.0.1”。Port = 6060:指标服务的端口为 6060。InfluxDBEndpoint = "http://localhost:8086":InfluxDB 端点地址为 “http://localhost:8086”。InfluxDBDatabase = "geth":InfluxDB 数据库名为 “geth”。InfluxDBUsername = "test":InfluxDB 的用户名是 “test”。InfluxDBPassword = "test":InfluxDB 的密码是 “test”。InfluxDBTags = "host=localhost":InfluxDB 的标签为 “host=localhost”。InfluxDBToken = "test":InfluxDB 的令牌是 “test”。InfluxDBBucket = "geth":InfluxDB 的存储桶名为 “geth”。InfluxDBOrganization = "geth":InfluxDB 的组织名为 “geth”。