Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 12 additions & 8 deletions bin/trapperkeeper
Original file line number Diff line number Diff line change
Expand Up @@ -52,9 +52,8 @@ def main():
community = config["community"]
if not community:
community = None
ipv6_server = config["ipv6"]
if not ipv6_server:
ipv6_server = None
ipv4 = config.get("ipv4", True)
ipv6 = config.get("ipv6", False)
Session.configure(bind=db_engine)

conn = Session()
Expand All @@ -71,13 +70,18 @@ def main():

transport_dispatcher = AsynsockDispatcher()
transport_dispatcher.registerRecvCbFun(cb)
if ipv6_server:
if ipv6 is not False:
ipv6_addr = "::1" if ipv6 is True else ipv6
transport_dispatcher.registerTransport(
udp6.domainName, udp6.Udp6SocketTransport().openServerMode(("::1", int(config["trap_port"])))
udp6.domainName, udp6.Udp6SocketTransport().openServerMode(
(ipv6_addr, int(config["trap_port"])))
)
if ipv4 is not False:
ipv4_addr = "0.0.0.0" if ipv4 is True else ipv4
transport_dispatcher.registerTransport(
udp.domainName, udp.UdpSocketTransport().openServerMode(
(ipv4_addr, int(config["trap_port"])))
)
transport_dispatcher.registerTransport(
udp.domainName, udp.UdpSocketTransport().openServerMode(("0.0.0.0", int(config["trap_port"])))
)

transport_dispatcher.jobStarted(1)
stats_thread = threading.Thread(target=stats_server, args=(str(config["stats_port"]),))
Expand Down
11 changes: 9 additions & 2 deletions conf/trapperkeeper.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,14 @@ config:
# Type: str
community: null

# Listen for traps on an IPv4 address
#
# Type: bool or str (IPv4 address)
# Default: true (0.0.0.0)
#ipv4: false

# Listen for traps on an IPv6 address
#
# Type: bool
ipv6: false
# Type: bool or str (IPv6 address)
# Default: false (::1 when true)
#ipv6: true