Commit Graph
63 Commits
Author SHA1 Message Date
grossmj 52de01523f Merge branch '2.2' into 3.1
# Conflicts:
#	gns3server/compute/builtin/nodes/cloud.py
#	gns3server/utils/interfaces.py
2026-08-18 18:05:56 +02:00
chara 80da7da515 add support basic support for OpenBSD.
there remains some work on ubridge, but this seems to work so far.
2026-08-13 22:24:58 +03:30
YueGuobin f9f1a4d4d8 log: demote all per-node lifecycle INFO logs to DEBUG
Extend the docker_vm / base_node demotion to the remaining node types
and supporting layers:

  qemu_vm: MAC, adapters, disk image, RAM, priority, NIO added, created
  iou_vm:  application ID, adapters, serial, image, RAM, NIO added
  dynamips router: created, adapter, RAM, NVRAM, IOS, idle-PC, disk,
    MAC, NIO bound; hypervisor create/start/connect; nio_udp created
  builtin: ethernet_switch/hub, cloud, nat — created, NIO bound
  ubridge: hypervisor start/connect

At multi-node scale these per-node lines flood the log. Only the
project-open progress summary (loaded N nodes / creating N links)
now remains at INFO alongside genuinely exceptional events.
2026-08-11 01:05:53 +08:00
YueGuobin 977d9628e5 fix(builtin): hide GNS3 internal bridge interfaces from Cloud node
Filter out host interfaces whose name starts with 'gns3' (e.g.
EthernetSwitch kernel bridges) from Cloud.asdict() interfaces list.
Other special interfaces (virbr0, docker0, etc.) remain visible.
2026-07-19 18:21:22 +08:00
YueGuobin d3527c00de fix(marker): extend marker support to dynamips and cloud nodes
Dynamips needed its own NIO base class extended with a `_markers`
attribute and `markers` property (mirroring the existing `filters`
pattern), plus marker propagation from the controller-supplied NIO
settings through NIOUDP.create/update to the common destination
NIO that base_node._ubridge_apply_markers reads.

Cloud simply needed the missing _ubridge_apply_markers calls after
_ubridge_apply_filters in its two ubridge connection methods, same
pattern as the earlier docker fix.

Both types are now added back to _MARKER_CAPABLE_TYPES.
2026-07-16 00:39:51 +08:00
YueGuobin 9721660cc3 Expose full interface address list and link state in cloud node API
Each host interface surfaced by the cloud node now reports:
- ip_addresses: every IPv4 and IPv6 address (previously only a single
  IPv4 was collected internally and then dropped before the response)
- status / speed / mtu / flags: operational state and link attributes
  sourced from psutil.net_if_stats(), with flags normalized to a list

The legacy ip_address / netmask / mac_address fields are preserved so
existing callers (compute link detection, GNS3 VM, VMware, has_netmask)
keep working. The new fields travel through the existing interfaces
payload that the controller forwards verbatim, so no controller-side
change is required and the PUT / ports_mapping flow is unaffected.
2026-07-10 13:56:07 +08:00
grossmj 74c675d5b0 Drop Windows support 2022-01-19 22:28:36 +10:30
grossmj 6ec028ea4e Merge branch '2.2' into 3.0
# Conflicts:
#	gns3server/compute/builtin/nodes/cloud.py
#	gns3server/compute/vmware/vmware_vm.py
#	gns3server/controller/link.py
#	gns3server/controller/snapshot.py
#	gns3server/handlers/api/compute/dynamips_vm_handler.py
#	gns3server/handlers/api/compute/iou_handler.py
#	gns3server/handlers/api/compute/qemu_handler.py
#	gns3server/handlers/api/controller/link_handler.py
#	gns3server/schemas/link.py
#	gns3server/utils/path.py
#	gns3server/version.py
#	requirements.txt
2021-06-12 14:36:32 +09:30
grossmj c892cf371b Fix VMware support on macOS BigSur 2021-06-08 11:56:33 +09:30
grossmj 971e86d254 Fix uBridge errors for cloud nodes not visible in logs. Fixes #1895 2021-05-16 14:59:02 +09:30
grossmj cefab8d362 Rename __json__() to asdict() 2021-04-17 23:34:28 +09:30
grossmj c021e21309 Use black with -l 120 param. 2021-04-13 18:46:50 +09:30
grossmj f928738bd5 Use pyupgrade with --py36-plus param. 2021-04-13 18:37:58 +09:30
grossmj c043830e3f Move endpoints to routes & preparations to use a database. 2020-11-19 15:21:03 +10:30
grossmj dff035d957 Support for "usage" for "Cloud" nodes. Fixes https://github.com/GNS3/gns3-gui/issues/2887
Allow "usage" for all builtin nodes (not exposed in Ui).
2020-07-15 19:15:51 +09:30
grossmj a17119187b Fix remote packet capture for Dynamips. 2019-04-01 20:58:18 +07:00
grossmj 4cc5dbc228 Fix remote packet capture and make sure packet capture is stopped when deleting an NIO. Fixes https://github.com/GNS3/gns3-gui/issues/2753 2019-04-01 19:47:31 +07:00
grossmj 2fb5e47c8d Allow cloud nodes to be exported. Fixes #1519 2019-02-23 11:07:01 +07:00
grossmj 3fae6ada95 Only require privileged access for uBridge when connecting a cloud to an Ethernet/TAP interface. Fixes #1461. 2018-11-19 17:33:17 +07:00
grossmj 2764828f38 Refactor how clients access PCAP capture files. Fixes https://github.com/GNS3/gns3-gui/issues/2438.
* The PCAP file is directly accessed if controller and client are on the same host.
* The PCAP file is streamed from the compute server to the client with the controller as a proxy when the controller is remote for the client.
2018-10-27 14:47:17 +07:00
grossmj 76af98404a Drop Python 3.4 and switch to async / await syntax for asyncio. Fixes #1425 2018-10-15 17:05:49 +07:00
grossmj 9de13c570c Merge branch '2.1' into 2.2
# Conflicts:
#	gns3server/compute/builtin/nodes/cloud.py
#	gns3server/compute/docker/docker_vm.py
#	gns3server/compute/dynamips/nodes/ethernet_switch.py
#	gns3server/compute/iou/iou_vm.py
#	gns3server/compute/qemu/qemu_vm.py
#	gns3server/compute/virtualbox/virtualbox_vm.py
#	gns3server/compute/vmware/vmware_vm.py
#	gns3server/controller/__init__.py
#	gns3server/version.py
#	gns3server/web/web_server.py
2018-10-04 15:44:13 +02:00
grossmj 17d657c919 Fix small errors like unhandled exceptions etc. 2018-09-11 15:06:01 +02:00
grossmj 1f017a0d1d Console support for clouds (to connect to external devices or services). 2018-06-10 17:43:29 +07:00
grossmj 08493871a5 Restrict the list of available Ethernet/TAP adapters. Fixes #352. 2018-03-15 16:33:23 +07:00
grossmj 90ce6093d8 Some spring cleaning. 2018-03-15 14:17:39 +07:00
ziajka 3d85bba9d4 Don't create directory structure during json dump. Fixes #2270 2017-10-02 10:41:57 +02:00
grossmj d76bcf7078 Use RAW sockets by default on Linux. 2017-09-19 12:39:55 +07:00
Julien Duponchelle 536c708c16 Filter implementation for cloud & Nat
Fix #1111
2017-07-17 17:27:07 +02:00
Julien Duponchelle 8b7035b185 Enable show in file manager for cloud
Fix https://github.com/GNS3/gns3-gui/issues/1900
2017-03-06 14:25:53 +01:00
Julien Duponchelle 1527a1a4e1 Fix cloud on Linux
Fix  https://github.com/GNS3/gns3-server/issues/865
2017-01-13 17:08:40 +01:00
Julien Duponchelle 82c99418b4 Fix If cloud interface is down the project doesn't open
Fix https://github.com/GNS3/gns3-gui/issues/1751
2017-01-11 17:23:36 +01:00
Julien Duponchelle 12f09829e7 Improve error message about the netmask
Ref #1751
2017-01-05 14:51:43 +01:00
grossmj 38d9555f72 Do not block traffic originating from an Ethernet interface in the cloud. Ref #771. 2016-11-23 22:06:44 +11:00
grossmj 7754d7f211 Revert "Make the Ethernet side the source in uBridge connection and UDP tunnel the destination. Ref #771."
This reverts commit 31c04cc95b.
2016-11-23 21:55:26 +11:00
grossmj 31c04cc95b Make the Ethernet side the source in uBridge connection and UDP tunnel the destination. Ref #771. 2016-11-22 21:57:55 +11:00
grossmj 3c384a7bf0 Try to fix VPCS and loobpack adapters not working together. Ref #771. 2016-11-15 17:36:51 +11:00
Julien Duponchelle 7255754fef Bridge support in cloud is more robust
Fix #761
2016-11-04 17:40:44 +01:00
Julien Duponchelle cf723962af Support bridge in cloud
Nat take advantage of that and the code is more simple.

Fix #761
2016-11-04 17:32:16 +01:00
Julien Duponchelle 1b3e47ce83 Add a test of cloud raw ethernet interface
Before touching it for the bridge support a test to prevent regressions.

Ref #761
2016-11-04 16:52:29 +01:00
Julien Duponchelle 99bdf37ec3 Prevent connect a node to himself
Fix https://github.com/GNS3/gns3-gui/issues/1553
2016-10-03 12:31:01 +02:00
Julien Duponchelle f6b34e2434 Bug fixes on Hub 2016-09-29 16:01:18 +02:00
Julien Duponchelle 7df645f742 Fix a crash in NAT 2016-09-27 11:54:07 +02:00
Julien Duponchelle 3ea5df7462 Make better error when we have no netmask
Fix #1541
2016-09-27 11:47:18 +02:00
Julien Duponchelle 5555662b2c Fix If I change the content of cloud the cloud no longer work
Fix #1540
2016-09-27 11:21:40 +02:00
Julien Duponchelle 79b4926cad Fix the nat node
Ref #686
2016-09-26 15:08:55 +02:00
Julien Duponchelle 4c900ce639 Cleanup port when cloud failed to create 2016-09-23 10:52:08 +02:00
Julien Duponchelle 41f12457e7 Fix a crash in cloud 2016-09-22 18:29:46 +02:00
Julien Duponchelle 29563ed7bc Fill cloud interface server side
Fix https://github.com/GNS3/gns3-gui/issues/1535
2016-09-22 17:46:32 +02:00
Julien Duponchelle b7bd73e8c9 Fix AttributeError: 'Cloud' object has no attribute '_ports'
Fix #682
2016-09-18 22:16:14 +02:00