GNS3 / gns3-gui

GNS3 Graphical Network Simulator
http://www.gns3.com
GNU General Public License v3.0
2.16k stars 435 forks source link

Connecting/disconnecting links causes server hang + project won't open #2259

Closed CapnCheapo closed 6 years ago

CapnCheapo commented 7 years ago

Hey guys,

This is for 2.0.3 running on a remote server.

Occasionally when adding or removing links to various types of devices, the client will timeout trying to connect back to the server and fail. Sometimes requiring a restart of the gns3server. Usually upon restart, the project comes back with the link added or removed as requested.

=> Timeout request http://cin@10.127.49.58:3080/v2/projects/d59e9bb4-751b-4521-b38c-c7214ade1da5/links Error while creating link: Operation timeout

This time however, when the server came back online the project couldn't be opened. The client says "Port already in use" and the client crashes.

Bad request http://10.127.49.58:3080/v2/compute/projects/d59e9bb4-751b-4521-b38c-c7214ade1da5/qemu/nodes { "message": "None is not of type 'integer'\n\nFailed validating 'type' in schema['properties']['console']:\n {'description': 'Console TCP port',\n 'maximum': 65535,\n 'minimum': 1,\n 'type': 'integer'}\n\nOn instance['console']:\n None", "method": "POST", "path": "/v2/compute/projects/{project_id}/qemu/nodes", "request": { "acpi_shutdown": false, "adapter_type": "e1000", "adapters": 16, "bios_image": "", "boot_priority": "c", "cdrom_image": "", "cpu_throttling": 0, "cpus": 1, "hda_disk_image": "vios_l2-adventerprisek9-m.03.2017.qcow2", "hda_disk_image_md5sum": "8f14b50083a14688dec2fc791706bb3e", "hda_disk_interface": "virtio", "hdb_disk_image": "IOSv_startup_config.img", "hdb_disk_image_md5sum": "bc605651c4688276f81fd59dcf5cc786", "hdb_disk_interface": "virtio", "hdc_disk_image": "", "hdc_disk_interface": "ide", "hdd_disk_image": "", "hdd_disk_interface": "ide", "initrd": "", "kernel_command_line": "", "kernel_image": "", "legacy_networking": false, "linked_clone": true, "mac_address": "00:1d:a5:67:eb:00", "options": "-nographic", "process_priority": "normal", "ram": 768, "usage": "" }, "status": 400 }

Here is the project, if that helps:

{ "auto_close": true, "auto_open": false, "auto_start": false, "name": "Ansible-NetworkAutomation", "project_id": "d59e9bb4-751b-4521-b38c-c7214ade1da5", "revision": 7, "scene_height": 1000, "scene_width": 2000, "topology": { "computes": [], "drawings": [], "links": [ { "link_id": "65ba8c0b-e452-4f40-87bd-a691bc640d76", "nodes": [ { "adapter_number": 1, "label": { "rotation": 0, "style": "font-family: TypeWriter;font-size: 10.0;font-weight: bold;fill: #000000;fill-opacity: 1.0;", "text": "Gi0/1", "x": 65, "y": 23 }, "node_id": "39e3dcbf-b253-4fae-a354-e73b6e2167eb", "port_number": 0 }, { "adapter_number": 1, "label": { "rotation": 0, "style": "font-family: TypeWriter;font-size: 10.0;font-weight: bold;fill: #000000;fill-opacity: 1.0;", "text": "Gi0/1", "x": -14, "y": 23 }, "node_id": "de35a079-c403-4df7-b959-1030accc36c0", "port_number": 0 } ] }, { "link_id": "c877d0e3-d177-4188-97f2-197ef8d8924f", "nodes": [ { "adapter_number": 0, "label": { "rotation": 0, "style": "font-size: 10; font-style: Verdana", "text": "0/1", "x": -10, "y": -10 }, "node_id": "fa6e65d0-b8d9-4b0c-9bb5-5824a4fa512c", "port_number": 1 }, { "adapter_number": 0, "label": { "rotation": 0, "style": "font-size: 10; font-style: Verdana", "text": "0/0", "x": -10, "y": -10 }, "node_id": "52386d84-322c-4815-b245-21b795f26a6a", "port_number": 0 } ] }, { "link_id": "060508cb-c1ba-4e93-837c-4635478ee8c0", "nodes": [ { "adapter_number": 1, "label": { "rotation": 0, "style": "font-family: TypeWriter;font-size: 10.0;font-weight: bold;fill: #000000;fill-opacity: 1.0;", "text": "Gi0/1", "x": 25, "y": 63 }, "node_id": "52386d84-322c-4815-b245-21b795f26a6a", "port_number": 0 }, { "adapter_number": 0, "label": { "rotation": 0, "style": "font-family: TypeWriter;font-size: 10.0;font-weight: bold;fill: #000000;fill-opacity: 1.0;", "text": "Gi0/0", "x": 25, "y": -16 }, "node_id": "39e3dcbf-b253-4fae-a354-e73b6e2167eb", "port_number": 0 } ] }, { "link_id": "461e1585-8716-4a31-b51c-cb2697cfd6a8", "nodes": [ { "adapter_number": 1, "label": { "rotation": 0, "style": "font-family: TypeWriter;font-size: 10.0;font-weight: bold;fill: #000000;fill-opacity: 1.0;", "text": "Gi0/1", "x": 26, "y": 63 }, "node_id": "fa3ac0d8-6f43-4ce6-9e6a-e99d0c1ad2d0", "port_number": 0 }, { "adapter_number": 0, "label": { "rotation": 0, "style": "font-family: TypeWriter;font-size: 10.0;font-weight: bold;fill: #000000;fill-opacity: 1.0;", "text": "Gi0/0", "x": 24, "y": -16 }, "node_id": "de35a079-c403-4df7-b959-1030accc36c0", "port_number": 0 } ] }, { "link_id": "78c09ede-c08f-4250-90b3-604cf5b78f24", "nodes": [ { "adapter_number": 0, "label": { "rotation": 0, "style": "font-family: TypeWriter;font-size: 10.0;font-weight: bold;fill: #000000;fill-opacity: 1.0;", "text": "e7", "x": 38, "y": 55 }, "node_id": "fa6e65d0-b8d9-4b0c-9bb5-5824a4fa512c", "port_number": 7 }, { "adapter_number": 0, "label": { "rotation": 0, "style": "font-family: TypeWriter;font-size: 10.0;font-weight: bold;fill: #000000;fill-opacity: 1.0;", "text": "nat0", "x": 76, "y": -4 }, "node_id": "5cae9086-ba14-4c6c-99e4-3044cb1c5738", "port_number": 0 } ] }, { "link_id": "ce532dff-533e-49bb-8629-996684153d40", "nodes": [ { "adapter_number": 0, "label": { "rotation": 0, "style": "font-size: 10; font-style: Verdana", "text": "0/0", "x": -10, "y": -10 }, "node_id": "52386d84-322c-4815-b245-21b795f26a6a", "port_number": 0 }, { "adapter_number": 0, "label": { "rotation": 0, "style": "font-size: 10; font-style: Verdana", "text": "0/1", "x": -10, "y": -10 }, "node_id": "fa6e65d0-b8d9-4b0c-9bb5-5824a4fa512c", "port_number": 1 } ] }, { "link_id": "c6876d9d-53f0-4852-aa24-365e5e65251b", "nodes": [ { "adapter_number": 0, "label": { "rotation": 0, "style": "font-family: TypeWriter;font-size: 10.0;font-weight: bold;fill: #000000;fill-opacity: 1.0;", "text": "eth0", "x": 72, "y": 31 }, "node_id": "f1bc9ef1-2c51-4384-8cfa-c953d7fceed2", "port_number": 0 }, { "adapter_number": 0, "label": { "rotation": 0, "style": "font-family: TypeWriter;font-size: 10.0;font-weight: bold;fill: #000000;fill-opacity: 1.0;", "text": "e0", "x": -4, "y": 14 }, "node_id": "fa6e65d0-b8d9-4b0c-9bb5-5824a4fa512c", "port_number": 0 } ] }, { "link_id": "e81d432d-bdeb-4f11-bc59-2f4f6723f259", "nodes": [ { "adapter_number": 15, "label": { "rotation": 0, "style": "font-family: TypeWriter;font-size: 10.0;font-weight: bold;fill: #000000;fill-opacity: 1.0;", "text": "Gi3/3", "x": 65, "y": 23 }, "node_id": "52386d84-322c-4815-b245-21b795f26a6a", "port_number": 0 }, { "adapter_number": 15, "label": { "rotation": 0, "style": "font-family: TypeWriter;font-size: 10.0;font-weight: bold;fill: #000000;fill-opacity: 1.0;", "text": "Gi3/3", "x": -14, "y": 23 }, "node_id": "fa3ac0d8-6f43-4ce6-9e6a-e99d0c1ad2d0", "port_number": 0 } ] }, { "link_id": "4670d272-a6be-404f-8a54-e98b3aff25b7", "nodes": [ { "adapter_number": 0, "label": { "rotation": 0, "style": "font-size: 10; font-style: Verdana", "text": "0/2", "x": -10, "y": -10 }, "node_id": "fa6e65d0-b8d9-4b0c-9bb5-5824a4fa512c", "port_number": 2 } ] } ], "nodes": [ { "compute_id": "local", "console": 2008, "console_type": "telnet", "first_port_name": "", "height": 48, "label": { "rotation": 0, "style": "font-family: TypeWriter;font-size: 10.0;font-weight: bold;fill: #000000;fill-opacity: 1.0;", "text": "SW1", "x": 10, "y": -25 }, "name": "SW1", "node_id": "39e3dcbf-b253-4fae-a354-e73b6e2167eb", "node_type": "qemu", "port_name_format": "Gi{1}/{0}", "port_segment_size": 4, "properties": { "acpi_shutdown": false, "adapter_type": "e1000", "adapters": 16, "bios_image": "", "bios_image_md5sum": null, "boot_priority": "c", "cdrom_image": "", "cdrom_image_md5sum": null, "cpu_throttling": 0, "cpus": 1, "hda_disk_image": "vios_l2-adventerprisek9-m.03.2017.qcow2", "hda_disk_image_md5sum": "8f14b50083a14688dec2fc791706bb3e", "hda_disk_interface": "virtio", "hdb_disk_image": "IOSv_startup_config.img", "hdb_disk_image_md5sum": "bc605651c4688276f81fd59dcf5cc786", "hdb_disk_interface": "virtio", "hdc_disk_image": "", "hdc_disk_image_md5sum": null, "hdc_disk_interface": "ide", "hdd_disk_image": "", "hdd_disk_image_md5sum": null, "hdd_disk_interface": "ide", "initrd": "", "initrd_md5sum": null, "kernel_command_line": "", "kernel_image": "", "kernel_image_md5sum": null, "legacy_networking": false, "linked_clone": true, "mac_address": "00:1d:a5:67:eb:00", "options": "-nographic", "platform": "x86_64", "process_priority": "normal", "qemu_path": "/usr/bin/qemu-system-x86_64", "ram": 768, "usage": "" }, "symbol": ":/symbols/multilayer_switch.svg", "width": 51, "x": 143, "y": 92, "z": 1 }, { "compute_id": "local", "console": 2004, "console_type": "telnet", "first_port_name": "", "height": 48, "label": { "rotation": 0, "style": "font-family: TypeWriter;font-size: 10.0;font-weight: bold;fill: #000000;fill-opacity: 1.0;", "text": "aggr1", "x": 6, "y": -25 }, "name": "aggr1", "node_id": "52386d84-322c-4815-b245-21b795f26a6a", "node_type": "qemu", "port_name_format": "Gi{1}/{0}", "port_segment_size": 4, "properties": { "acpi_shutdown": false, "adapter_type": "e1000", "adapters": 16, "bios_image": "", "bios_image_md5sum": null, "boot_priority": "c", "cdrom_image": "", "cdrom_image_md5sum": null, "cpu_throttling": 0, "cpus": 1, "hda_disk_image": "vios_l2-adventerprisek9-m.03.2017.qcow2", "hda_disk_image_md5sum": "8f14b50083a14688dec2fc791706bb3e", "hda_disk_interface": "virtio", "hdb_disk_image": "IOSv_startup_config.img", "hdb_disk_image_md5sum": "bc605651c4688276f81fd59dcf5cc786", "hdb_disk_interface": "virtio", "hdc_disk_image": "", "hdc_disk_image_md5sum": null, "hdc_disk_interface": "ide", "hdd_disk_image": "", "hdd_disk_image_md5sum": null, "hdd_disk_interface": "ide", "initrd": "", "initrd_md5sum": null, "kernel_command_line": "", "kernel_image": "", "kernel_image_md5sum": null, "legacy_networking": false, "linked_clone": true, "mac_address": "00:1d:a5:6a:6a:00", "options": "-nographic", "platform": "x86_64", "process_priority": "normal", "qemu_path": "/usr/bin/qemu-system-x86_64", "ram": 768, "usage": "" }, "symbol": ":/symbols/multilayer_switch.svg", "width": 51, "x": 143, "y": -61, "z": 1 }, { "compute_id": "local", "console": 2001, "console_type": "telnet", "first_port_name": null, "height": 59, "label": { "rotation": 0, "style": "font-family: TypeWriter;font-size: 10.0;font-weight: bold;fill: #000000;fill-opacity: 1.0;", "text": "NetworkAutomation-1", "x": -29, "y": -25 }, "name": "NetworkAutomation-1", "node_id": "f1bc9ef1-2c51-4384-8cfa-c953d7fceed2", "node_type": "docker", "port_name_format": "Ethernet{0}", "port_segment_size": 0, "properties": { "adapters": 1, "aux": 2002, "console_http_path": "/", "console_http_port": 80, "console_resolution": "1024x768", "container_id": "8aa91a1f4bfb502f7d9598ab9a750a3337536a36712920301c7f3c0a70b5fb58", "environment": null, "image": "gns3/network_automation:latest", "start_command": null }, "symbol": ":/symbols/docker_guest.svg", "width": 65, "x": -228, "y": -67, "z": 1 }, { "compute_id": "local", "console": 2006, "console_type": "telnet", "first_port_name": "", "height": 48, "label": { "rotation": 0, "style": "font-family: TypeWriter;font-size: 10.0;font-weight: bold;fill: #000000;fill-opacity: 1.0;", "text": "aggr2", "x": 6, "y": -25 }, "name": "aggr2", "node_id": "fa3ac0d8-6f43-4ce6-9e6a-e99d0c1ad2d0", "node_type": "qemu", "port_name_format": "Gi{1}/{0}", "port_segment_size": 4, "properties": { "acpi_shutdown": false, "adapter_type": "e1000", "adapters": 16, "bios_image": "", "bios_image_md5sum": null, "boot_priority": "c", "cdrom_image": "", "cdrom_image_md5sum": null, "cpu_throttling": 0, "cpus": 1, "hda_disk_image": "vios_l2-adventerprisek9-m.03.2017.qcow2", "hda_disk_image_md5sum": "8f14b50083a14688dec2fc791706bb3e", "hda_disk_interface": "virtio", "hdb_disk_image": "IOSv_startup_config.img", "hdb_disk_image_md5sum": "bc605651c4688276f81fd59dcf5cc786", "hdb_disk_interface": "virtio", "hdc_disk_image": "", "hdc_disk_image_md5sum": null, "hdc_disk_interface": "ide", "hdd_disk_image": "", "hdd_disk_image_md5sum": null, "hdd_disk_interface": "ide", "initrd": "", "initrd_md5sum": null, "kernel_command_line": "", "kernel_image": "", "kernel_image_md5sum": null, "legacy_networking": false, "linked_clone": true, "mac_address": "00:1d:a5:d2:d0:00", "options": "-nographic", "platform": "x86_64", "process_priority": "normal", "qemu_path": "/usr/bin/qemu-system-x86_64", "ram": 768, "usage": "" }, "symbol": ":/symbols/multilayer_switch.svg", "width": 51, "x": 270, "y": -59, "z": 1 }, { "compute_id": "local", "console": null, "console_type": null, "first_port_name": null, "height": 71, "label": { "rotation": 0, "style": "font-family: TypeWriter;font-size: 10.0;font-weight: bold;fill: #000000;fill-opacity: 1.0;", "text": "Nat1", "x": 63, "y": -25 }, "name": "Nat1", "node_id": "5cae9086-ba14-4c6c-99e4-3044cb1c5738", "node_type": "nat", "port_name_format": "Ethernet{0}", "port_segment_size": 0, "properties": { "ports_mapping": [ { "interface": "virbr0", "name": "nat0", "port_number": 0, "type": "ethernet" } ] }, "symbol": ":/symbols/cloud.svg", "width": 159, "x": -96, "y": 77, "z": 0 }, { "compute_id": "local", "console": 2010, "console_type": "telnet", "first_port_name": "", "height": 48, "label": { "rotation": 0, "style": "font-family: TypeWriter;font-size: 10.0;font-weight: bold;fill: #000000;fill-opacity: 1.0;", "text": "SW2", "x": 10, "y": -25 }, "name": "SW2", "node_id": "de35a079-c403-4df7-b959-1030accc36c0", "node_type": "qemu", "port_name_format": "Gi{1}/{0}", "port_segment_size": 4, "properties": { "acpi_shutdown": false, "adapter_type": "e1000", "adapters": 16, "bios_image": "", "bios_image_md5sum": null, "boot_priority": "c", "cdrom_image": "", "cdrom_image_md5sum": null, "cpu_throttling": 0, "cpus": 1, "hda_disk_image": "vios_l2-adventerprisek9-m.03.2017.qcow2", "hda_disk_image_md5sum": "8f14b50083a14688dec2fc791706bb3e", "hda_disk_interface": "virtio", "hdb_disk_image": "IOSv_startup_config.img", "hdb_disk_image_md5sum": "bc605651c4688276f81fd59dcf5cc786", "hdb_disk_interface": "virtio", "hdc_disk_image": "", "hdc_disk_image_md5sum": null, "hdc_disk_interface": "ide", "hdd_disk_image": "", "hdd_disk_image_md5sum": null, "hdd_disk_interface": "ide", "initrd": "", "initrd_md5sum": null, "kernel_command_line": "", "kernel_image": "", "kernel_image_md5sum": null, "legacy_networking": false, "linked_clone": true, "mac_address": "00:1d:a5:36:c0:00", "options": "-nographic", "platform": "x86_64", "process_priority": "normal", "qemu_path": "/usr/bin/qemu-system-x86_64", "ram": 768, "usage": "" }, "symbol": ":/symbols/multilayer_switch.svg", "width": 51, "x": 270, "y": 92, "z": 1 }, { "compute_id": "local", "console": null, "console_type": null, "first_port_name": null, "height": 32, "label": { "rotation": 0, "style": "font-family: TypeWriter;font-size: 10.0;font-weight: bold;fill: #000000;fill-opacity: 1.0;", "text": "ethernet", "x": 9, "y": -25 }, "name": "ethernet", "node_id": "fa6e65d0-b8d9-4b0c-9bb5-5824a4fa512c", "node_type": "ethernet_switch", "port_name_format": "Ethernet{0}", "port_segment_size": 0, "properties": { "ports_mapping": [ { "name": "Ethernet0", "port_number": 0, "type": "access", "vlan": 1 "width": 51, "x": 270, "y": -59, "z": 1 }, { "compute_id": "local", "console": null, "console_type": null, "first_port_name": null, "height": 71, "label": { "rotation": 0, "style": "font-family: TypeWriter;font-size: 10.0;font- weight: bold;fill: #000000;fill-opacity: 1.0;", "text": "Nat1", "x": 63, "y": -25 }, "name": "Nat1", "node_id": "5cae9086-ba14-4c6c-99e4-3044cb1c5738", "node_type": "nat", "port_name_format": "Ethernet{0}", "port_segment_size": 0, "properties": { "ports_mapping": [ { "interface": "virbr0", "name": "nat0", "port_number": 0, "type": "ethernet" } ] }, "symbol": ":/symbols/cloud.svg", "width": 159, "x": -96, "y": 77, "z": 0 }, { "compute_id": "local", "console": 2010, "console_type": "telnet", "first_port_name": "", "height": 48, "label": { "rotation": 0, "style": "font-family: TypeWriter;font-size: 10.0;font- weight: bold;fill: #000000;fill-opacity: 1.0;", "text": "SW2", "x": 10, "y": -25 }, "name": "SW2", "node_id": "de35a079-c403-4df7-b959-1030accc36c0", "node_type": "qemu", "port_name_format": "Gi{1}/{0}", "port_segment_size": 4, "properties": { "acpi_shutdown": false, "adapter_type": "e1000", "adapters": 16, "bios_image": "", "bios_image_md5sum": null, "boot_priority": "c", "cdrom_image": "", "cdrom_image_md5sum": null, "cpu_throttling": 0, "cpus": 1, "hda_disk_image": "vios_l2-adventerprisek9-m.03.2017.qcow2", "hda_disk_image_md5sum": "8f14b50083a14688dec2fc791706bb3e", "hda_disk_interface": "virtio", "hdb_disk_image": "IOSv_startup_config.img", "hdb_disk_image_md5sum": "bc605651c4688276f81fd59dcf5cc786", "hdb_disk_interface": "virtio", "hdc_disk_image": "", "hdc_disk_image_md5sum": null, "hdc_disk_interface": "ide", "hdd_disk_image": "", "hdd_disk_image_md5sum": null, "hdd_disk_interface": "ide", "initrd": "", "initrd_md5sum": null, "kernel_command_line": "", "kernel_image": "", "kernel_image_md5sum": null, "legacy_networking": false, "linked_clone": true, "mac_address": "00:1d:a5:36:c0:00", "options": "-nographic", "platform": "x86_64", "process_priority": "normal", "qemu_path": "/usr/bin/qemu-system-x86_64", "ram": 768, "usage": "" }, "symbol": ":/symbols/multilayer_switch.svg", "width": 51, "x": 270, "y": 92, "z": 1 }, { "compute_id": "local", "console": null, "console_type": null, "first_port_name": null, "height": 32, "label": { "rotation": 0, "style": "font-family: TypeWriter;font-size: 10.0;font-weight: bold;fill: #000000;fill-opacity: 1.0;", "text": "ethernet", "x": 9, "y": -25 }, "name": "ethernet", "node_id": "fa6e65d0-b8d9-4b0c-9bb5-5824a4fa512c", "node_type": "ethernet_switch", "port_name_format": "Ethernet{0}", "port_segment_size": 0, "properties": { "ports_mapping": [ { "name": "Ethernet0", "port_number": 0, "type": "access", "vlan": 1 }, { "name": "Ethernet1", "port_number": 1, "type": "access", "vlan": 1 }, { "name": "Ethernet2", "port_number": 2, "type": "access", "vlan": 1 }, { "name": "Ethernet3", "port_number": 3, "type": "access", "vlan": 1 }, { "name": "Ethernet4", "port_number": 4, "type": "access", "vlan": 1 }, { "name": "Ethernet5", "port_number": 5, "type": "access", "vlan": 1 }, { "name": "Ethernet6", "port_number": 6, "type": "access", "vlan": 1 }, { "name": "Ethernet7", "port_number": 7, "type": "access", "vlan": 1 } ] }, "symbol": ":/symbols/ethernet_switch.svg", "width": 72, "x": -49, "y": -53, "z": 1 } ] }, "type": "topology", "version": "2.0.3" }

CapnCheapo commented 7 years ago

In addition to the above, I can make the following happen if I remove the connected device, but I haven't found the pattern yet:

screen shot 2017-09-07 at 9 34 49 am
grossmj commented 7 years ago

I have fixed the problem, now you should be able to open the project: https://github.com/GNS3/gns3-server/commit/e1c8df170a609a82cd6246be73d81881eb1d837d

grossmj commented 6 years ago

@CapnCheapo do you still have issues with 2.1?

CapnCheapo commented 6 years ago

I have not been able to reproduce the issue in 2.1. I did however open another issue related to links selecting the first interface by default: #2353

grossmj commented 6 years ago

Thanks for the feedback. I will go ahead and close that issue. Please re-open if you get it again.