From d1973c0b5d04dc61b458486f71279a67234ec23b Mon Sep 17 00:00:00 2001 From: Dmitrii Gudov Date: Wed, 18 Mar 2026 18:19:19 +0300 Subject: [PATCH] fix mask --- requirements.txt | 3 ++- src/netdiag/output/file_convert.py | 11 ++++++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/requirements.txt b/requirements.txt index fcd55e3..e2bc708 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,2 +1,3 @@ pyaml -py-d2 \ No newline at end of file +py-d2 +graphviz diff --git a/src/netdiag/output/file_convert.py b/src/netdiag/output/file_convert.py index 0476fae..c545c6f 100644 --- a/src/netdiag/output/file_convert.py +++ b/src/netdiag/output/file_convert.py @@ -37,8 +37,17 @@ def make_yaml(topology: Topology, output_path: Path) -> None: for _, device in topology.devices.items(): interfaces = dict() for interface_name, interface in device.interfaces.items(): + mask = ( + topology.networks[interface.network].subnet_mask + if interface.network + else None + ) + ip = f"{interface.ip_address}/{mask}" if interface.ip_address else None + if mask is None: + ip = interface.ip_address if interface.ip_address else None + interfaces[interface_name] = { - "ip": interface.ip_address if interface.ip_address else None, + "ip": ip, "network": interface.network if interface.network else None, "gateway": ( interface.default_gateway if interface.default_gateway else None