diff --git a/scripts/base/frameworks/cluster/main.zeek b/scripts/base/frameworks/cluster/main.zeek index 02c63562b6..f0ece62741 100644 --- a/scripts/base/frameworks/cluster/main.zeek +++ b/scripts/base/frameworks/cluster/main.zeek @@ -1,4 +1,4 @@ -##! A framework for establishing and controlling a cluster of Zeek instances. +#hh#! A framework for establishing and controlling a cluster of Zeek instances. ##! In order to use the cluster framework, a script named ##! ``cluster-layout.zeek`` must exist somewhere in Zeek's script search path ##! which has a cluster definition of the :zeek:id:`Cluster::nodes` variable. @@ -162,7 +162,7 @@ export { ## can specify a particular :rfc:`4007` ``zone_id``. zone_id: string &default=""; ## The port that this node will listen on for peer connections. - p: port; + p: port &optional; ## Identifier for the interface a worker is sniffing. interface: string &optional; ## Name of the manager node this node uses. For workers and proxies. diff --git a/scripts/base/frameworks/cluster/setup-connections.zeek b/scripts/base/frameworks/cluster/setup-connections.zeek index 2abd57b142..7e470037a6 100644 --- a/scripts/base/frameworks/cluster/setup-connections.zeek +++ b/scripts/base/frameworks/cluster/setup-connections.zeek @@ -89,11 +89,15 @@ event zeek_init() &priority=-10 Broker::subscribe(nodeid_topic(Broker::node_id())); Broker::subscribe(node_topic(node)); - Broker::listen(Broker::default_listen_address, - self$p, - Broker::default_listen_retry); + if ( self?$p ) + { + Broker::listen(Broker::default_listen_address, + self$p, + Broker::default_listen_retry); + + Cluster::log(fmt("listening on %s:%s", Broker::default_listen_address, self$p)); + } - Cluster::log(fmt("listening on %s:%s", Broker::default_listen_address, self$p)); switch ( self$node_type ) { case MANAGER: