From a7d394bdbd6e447cf44387c62e73f76896b90018 Mon Sep 17 00:00:00 2001 From: Julien Duponchelle Date: Wed, 9 Dec 2015 20:12:39 +0100 Subject: [PATCH 1/6] An IOU sample --- appliances/cisco-iou-l3.gns3a | 37 ++++++++++++++++++++++++++++ schemas/appliance.json | 46 +++++++++++++++++++++++++++++++---- 2 files changed, 78 insertions(+), 5 deletions(-) create mode 100644 appliances/cisco-iou-l3.gns3a diff --git a/appliances/cisco-iou-l3.gns3a b/appliances/cisco-iou-l3.gns3a new file mode 100644 index 0000000..39a908d --- /dev/null +++ b/appliances/cisco-iou-l3.gns3a @@ -0,0 +1,37 @@ +{ + "category": "router", + "status": "experimental", + "maintainer": "GNS3 Team", + "name": "Cisco IOU L3", + "vendor_name": "Cisco", + "product_name": "Cisco IOU L3", + "vendor_url": "http://www.cisco.com", + "description": "Cisco IOS on UNIX Layer 3 image.", + "registry_version": 2, + "maintainer_email": "developers@gns3.net", + + "iou": { + "ethernet_adapters": 2, + "serial_adapters": 2, + "nvram": 128, + "ram": 256, + "startup_config": "iou_l3_base_startup-config.txt" + }, + + "versions": [ + { + "images": { + "image": "i86bi-linux-l3-adventerprisek9-15.4.1T.bin" + }, + "name": "15.4.1T" + } + ], + "images": [ + { + "filesize": 152677848, + "md5sum": "2eabae17778316c49cbc80e8e81262f9", + "version": "15.4.1T", + "filename": "i86bi-linux-l3-adventerprisek9-15.4.1T.bin" + } + ] +} diff --git a/schemas/appliance.json b/schemas/appliance.json index a78c528..df0d844 100644 --- a/schemas/appliance.json +++ b/schemas/appliance.json @@ -44,7 +44,7 @@ "title": "An optional product url on vendor website" }, "registry_version": { - "enum": [1], + "enum": [1, 2], "title": "Version of the registry compatible with this appliance" }, "status": { @@ -85,6 +85,40 @@ "title": "False if you don't want to use a single image for all nodes" }, + "iou": { + "type": "object", + "title": "IOU specific options", + "properties": { + "ethernet_adapters": { + "type": "integer", + "title": "Number of ethernet adapters" + }, + "serial_adapters": { + "type": "integer", + "title": "Number of serial adapters" + }, + "nvram": { + "type": "integer", + "title": "Host NVRAM" + }, + "ram": { + "type": "integer", + "title": "Host RAM" + }, + "startup_config": { + "type": "string", + "title": "Config loaded at startup" + } + }, + "required": [ + "ethernet_adapters", + "serial_adapters", + "nvram", + "ram", + "startup_config" + ] + }, + "qemu": { "type": "object", "title": "Qemu specific options", @@ -190,8 +224,7 @@ "filename", "version", "md5sum", - "filesize", - "download_url" + "filesize" ] } }, @@ -218,9 +251,13 @@ "type": "string", "title": "Initrd disk image" }, + "image": { + "type": "string", + "title": "OS image" + }, "hda_disk_image": { "type": "string", - "title": "Hdb disk image" + "title": "Hda disk image" }, "hdb_disk_image": { "type": "string", @@ -261,7 +298,6 @@ "status", "maintainer", "maintainer_email", - "qemu", "images", "versions" ] From ceb963871a0435436611207d1f46fef75aa05ce7 Mon Sep 17 00:00:00 2001 From: Julien Duponchelle Date: Thu, 10 Dec 2015 16:14:45 +0100 Subject: [PATCH 2/6] IOU L2 --- appliances/cisco-iou-l2.gns3a | 50 +++++++++++++++++++++++++++++++++++ appliances/cisco-iou-l3.gns3a | 13 +++++++++ 2 files changed, 63 insertions(+) create mode 100644 appliances/cisco-iou-l2.gns3a diff --git a/appliances/cisco-iou-l2.gns3a b/appliances/cisco-iou-l2.gns3a new file mode 100644 index 0000000..0bf58c8 --- /dev/null +++ b/appliances/cisco-iou-l2.gns3a @@ -0,0 +1,50 @@ +{ + "category": "multilayer_switch", + "status": "experimental", + "maintainer": "GNS3 Team", + "name": "Cisco IOU L2", + "vendor_name": "Cisco", + "product_name": "Cisco IOU L2", + "vendor_url": "http://www.cisco.com", + "description": "Cisco IOS on UNIX Layer 2 image.", + "registry_version": 2, + "maintainer_email": "developers@gns3.net", + + "iou": { + "ethernet_adapters": 4, + "serial_adapters": 0, + "nvram": 128, + "ram": 256, + "startup_config": "iou_l2_base_startup-config.txt" + }, + + "versions": [ + { + "images": { + "image": "i86bi-linux-l2-adventerprisek9-15.1a.bin" + }, + "name": "15.1a" + }, + { + "images": { + "image": "i86bi-linux-l2-ipbasek9-15.1g.bin" + }, + "name": "15.1g" + } + + ], + "images": [ + { + "filesize": 72726092, + "md5sum": "9549a20a7391fb849da32caa77a0d254", + "version": "15.1a", + "filename": "i86bi-linux-l2-adventerprisek9-15.1a.bin" + }, + { + "filesize": 62137336, + "md5sum": "0b8b9e14ca99b68c654e44c4296857ba", + "version": "15.1g", + "filename": "i86bi-linux-l2-ipbasek9-15.1g.bin" + } + ] +} diff --git a/appliances/cisco-iou-l3.gns3a b/appliances/cisco-iou-l3.gns3a index 39a908d..7a9ad13 100644 --- a/appliances/cisco-iou-l3.gns3a +++ b/appliances/cisco-iou-l3.gns3a @@ -24,7 +24,14 @@ "image": "i86bi-linux-l3-adventerprisek9-15.4.1T.bin" }, "name": "15.4.1T" + }, + { + "images": { + "image": "i86bi-linux-l3-adventerprisek9-ms.155-2.T.bin" + }, + "name": "155-2T" } + ], "images": [ { @@ -32,6 +39,12 @@ "md5sum": "2eabae17778316c49cbc80e8e81262f9", "version": "15.4.1T", "filename": "i86bi-linux-l3-adventerprisek9-15.4.1T.bin" + }, + { + "filesize": 172982492, + "md5sum": "45e99761a95cbd3ee3924ecf0f3d89e5", + "version": "155-2T", + "filename": "i86bi-linux-l3-adventerprisek9-ms.155-2.T.bin" } ] } From f42cde80a0cb2f5403cacc596a6d32cb7cb9ad97 Mon Sep 17 00:00:00 2001 From: Julien Duponchelle Date: Thu, 10 Dec 2015 18:28:49 +0100 Subject: [PATCH 3/6] Dynamips support --- appliances/cisco-3745.gns3a | 47 ++++++++++++++++++++++++++++++ schemas/appliance.json | 58 +++++++++++++++++++++++++++++++++++++ 2 files changed, 105 insertions(+) create mode 100644 appliances/cisco-3745.gns3a diff --git a/appliances/cisco-3745.gns3a b/appliances/cisco-3745.gns3a new file mode 100644 index 0000000..aa9e5c8 --- /dev/null +++ b/appliances/cisco-3745.gns3a @@ -0,0 +1,47 @@ +{ + "category": "router", + "status": "experimental", + "maintainer": "GNS3 Team", + "name": "Cisco 3745", + "vendor_name": "Cisco", + "product_name": "3745", + "vendor_url": "http://www.cisco.com", + "description": "Cisco 3745 Multiservice Access Router", + "registry_version": 2, + "maintainer_email": "developers@gns3.net", + "documentation_url": "http://www.cisco.com/c/en/us/support/routers/3745-multiservice-access-router/model.html", + + "dynamips": { + "chassis": "", + "platform": "c3745", + "ram": 256, + "nvram": 256, + "startup_config": "ios_base_startup-config.txt", + "slot0": "GT96100-FE", + "slot1": "NM-1FE-TX", + "slot2": "NM-4T", + "slot3": "", + "slot4": "", + "wic0": "WIC-1T", + "wic1": "WIC-1T", + "wic2": "WIC-1T" + }, + + "versions": [ + { + "images": { + "image": "c3745-adventerprisek9-mz.124-25d.image" + }, + "idlepc": "0x60aa1da0", + "name": "124-25d" + } + ], + "images": [ + { + "filesize": 82053028, + "md5sum": "ddbaf74274822b50fa9670e10c75b08f", + "version": "124-25d", + "filename": "c3745-adventerprisek9-mz.124-25d.image" + } + ] +} diff --git a/schemas/appliance.json b/schemas/appliance.json index df0d844..19acea7 100644 --- a/schemas/appliance.json +++ b/schemas/appliance.json @@ -2,6 +2,17 @@ "$schema": "http://json-schema.org/draft-04/schema#", "type": "object", "title": "JSON schema validating a GNS3 appliance", + + "definitions": { + "dynamips_slot": { + "enum": ["C2600-MB-2FE", "C2600-MB-1E", "PA-A1", "PA-8E", "C1700-MB-1FE", "PA-8T", "PA-2FE-TX", "PA-FE-TX", "PA-GE", "C2600-MB-2E", "C7200-IO-FE", "NM-4T", "C2600-MB-1FE", "C7200-IO-2FE", "PA-POS-OC3", "PA-4T+", "C1700-MB-WIC1", "NM-16ESW", "C7200-IO-GE-E", "NM-4E", "GT96100-FE", "NM-1FE-TX", "Leopard-2FE", "NM-1E", "PA-4E", ""] + }, + + "dynamips_wic": { + "enum": ["WIC-1ENET", "WIC-1T", "WIC-2T", ""] + } + }, + "properties": { "name": { "type": "string", @@ -110,6 +121,7 @@ "title": "Config loaded at startup" } }, + "additionalProperties": false, "required": [ "ethernet_adapters", "serial_adapters", @@ -119,6 +131,51 @@ ] }, + "dynamips": { + "type": "object", + "title": "Dynamips specific options", + "properties": { + "chassis": { + "title": "Chassis type", + "enum": ["1720", "1721", "1750", "1751", "1760", "2610", "2620", "2610XM", "2620XM", "2650XM", "2621", "2611XM", "2621XM", "2651XM", "3620", "3640", "3660", ""] + }, + "platform": { + "title": "Platform type", + "enum": ["c1700", "c2600", "c2691", "c3725", "c3745", "c3600", "c7200"] + }, + "ram": { + "title": "Amount of ram", + "type": "integer", + "minimum": 1 + }, + "nvram": { + "title": "Amount of nvram", + "type": "integer", + "minimum": 1 + }, + "startup_config": { + "type": "string", + "title": "Config loaded at startup" + }, + "wic0": { "$ref": "#/definitions/dynamips_wic" }, + "wic1": { "$ref": "#/definitions/dynamips_wic" }, + "wic2": { "$ref": "#/definitions/dynamips_wic" }, + "slot0": { "$ref": "#/definitions/dynamips_slot" }, + "slot1": { "$ref": "#/definitions/dynamips_slot" }, + "slot2": { "$ref": "#/definitions/dynamips_slot" }, + "slot3": { "$ref": "#/definitions/dynamips_slot" }, + "slot4": { "$ref": "#/definitions/dynamips_slot" }, + "slot5": { "$ref": "#/definitions/dynamips_slot" }, + "slot6": { "$ref": "#/definitions/dynamips_slot" } + }, + "additionalProperties": false, + "required": [ + "platform", + "ram", + "nvram" + ] + }, + "qemu": { "type": "object", "title": "Qemu specific options", @@ -239,6 +296,7 @@ "type": "string", "title": "Name of the version" }, + "idlepc": {"type": "string", "pattern": "^0x[0-9a-f]{8}"}, "images": { "type": "object", "title": "Images used for this version", From 6d0f22c00dae2fb7053633ba8149392ff8f74806 Mon Sep 17 00:00:00 2001 From: Julien Duponchelle Date: Tue, 15 Dec 2015 10:45:46 +0100 Subject: [PATCH 4/6] Cisco 7200 --- appliances/cisco-7200.gns3a | 40 +++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 appliances/cisco-7200.gns3a diff --git a/appliances/cisco-7200.gns3a b/appliances/cisco-7200.gns3a new file mode 100644 index 0000000..57d04a2 --- /dev/null +++ b/appliances/cisco-7200.gns3a @@ -0,0 +1,40 @@ +{ + "category": "router", + "status": "experimental", + "maintainer": "GNS3 Team", + "name": "Cisco 7200", + "vendor_name": "Cisco", + "product_name": "7200", + "vendor_url": "http://www.cisco.com", + "description": "Cisco 7200 Router", + "registry_version": 2, + "maintainer_email": "developers@gns3.net", + "documentation_url": "http://www.cisco.com/c/en/us/products/routers/7200-series-routers/index.html", + + "dynamips": { + "chassis": "", + "platform": "c7200", + "ram": 512, + "nvram": 512, + "startup_config": "ios_base_startup-config.txt", + "slot0": "C7200-IO-FE" + }, + + "versions": [ + { + "images": { + "image": "c7200-adventerprisek9-mz.124-24.T5.image" + }, + "idlepc": "0x606df838", + "name": "124-25.T5" + } + ], + "images": [ + { + "filesize": 102345240, + "md5sum": "6b89d0d804e1f2bb5b8bda66b5692047", + "version": "124-25.T5", + "filename": "c7200-adventerprisek9-mz.124-24.T5.image" + } + ] +} From 39a614b970ea336a8a9449dd341209b775dd359e Mon Sep 17 00:00:00 2001 From: Julien Duponchelle Date: Tue, 15 Dec 2015 10:52:17 +0100 Subject: [PATCH 5/6] 3725 --- appliances/cisco-3725.gns3a | 39 +++++++++++++++++++++++++++++++++++++ appliances/cisco-7200.gns3a | 1 - 2 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 appliances/cisco-3725.gns3a diff --git a/appliances/cisco-3725.gns3a b/appliances/cisco-3725.gns3a new file mode 100644 index 0000000..4e062a3 --- /dev/null +++ b/appliances/cisco-3725.gns3a @@ -0,0 +1,39 @@ +{ + "category": "router", + "status": "experimental", + "maintainer": "GNS3 Team", + "name": "Cisco 3725", + "vendor_name": "Cisco", + "product_name": "3725", + "vendor_url": "http://www.cisco.com", + "description": "Cisco 3725 Router", + "registry_version": 2, + "maintainer_email": "developers@gns3.net", + "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", + + "dynamips": { + "platform": "c3725", + "ram": 128, + "nvram": 256, + "startup_config": "ios_base_startup-config.txt", + "slot0": "GT96100-FE" + }, + + "versions": [ + { + "images": { + "image": "c3725-adventerprisek9-mz.124-15.T14.image" + }, + "idlepc": "0x60c09aa0", + "name": "124-25.T14" + } + ], + "images": [ + { + "filesize": 97859480, + "md5sum": "64f8c427ed48fd21bd02cf1ff254c4eb", + "version": "124-25.T14", + "filename": "c3725-adventerprisek9-mz.124-15.T14.image" + } + ] +} diff --git a/appliances/cisco-7200.gns3a b/appliances/cisco-7200.gns3a index 57d04a2..8f2623c 100644 --- a/appliances/cisco-7200.gns3a +++ b/appliances/cisco-7200.gns3a @@ -12,7 +12,6 @@ "documentation_url": "http://www.cisco.com/c/en/us/products/routers/7200-series-routers/index.html", "dynamips": { - "chassis": "", "platform": "c7200", "ram": 512, "nvram": 512, From 67c4ddcaeb121a39ddfd1d82ae70ca0137fbd380 Mon Sep 17 00:00:00 2001 From: Julien Duponchelle Date: Tue, 15 Dec 2015 13:58:55 +0100 Subject: [PATCH 6/6] Add more cisco gears --- appliances/cisco-1700.gns3a | 40 +++++++++++++++++++++++++++++++++++++ appliances/cisco-2600.gns3a | 40 +++++++++++++++++++++++++++++++++++++ appliances/cisco-2691.gns3a | 39 ++++++++++++++++++++++++++++++++++++ appliances/cisco-3620.gns3a | 39 ++++++++++++++++++++++++++++++++++++ appliances/cisco-3640.gns3a | 39 ++++++++++++++++++++++++++++++++++++ appliances/cisco-3660.gns3a | 39 ++++++++++++++++++++++++++++++++++++ 6 files changed, 236 insertions(+) create mode 100644 appliances/cisco-1700.gns3a create mode 100644 appliances/cisco-2600.gns3a create mode 100644 appliances/cisco-2691.gns3a create mode 100644 appliances/cisco-3620.gns3a create mode 100644 appliances/cisco-3640.gns3a create mode 100644 appliances/cisco-3660.gns3a diff --git a/appliances/cisco-1700.gns3a b/appliances/cisco-1700.gns3a new file mode 100644 index 0000000..38b56a7 --- /dev/null +++ b/appliances/cisco-1700.gns3a @@ -0,0 +1,40 @@ +{ + "category": "router", + "status": "experimental", + "maintainer": "GNS3 Team", + "name": "Cisco 1700", + "vendor_name": "Cisco", + "product_name": "1700", + "vendor_url": "http://www.cisco.com", + "description": "Cisco 1700 Router", + "registry_version": 2, + "maintainer_email": "developers@gns3.net", + "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", + + "dynamips": { + "platform": "c1700", + "chassis": "1720", + "slot0": "C1700-MB-1FE", + "ram": 160, + "nvram": 128, + "startup_config": "ios_base_startup-config.txt" + }, + + "versions": [ + { + "images": { + "image": "c1700-adventerprisek9-mz.124-25d.image" + }, + "idlepc": "0x80358a60", + "name": "124-25d" + } + ], + "images": [ + { + "filesize": 57475320, + "md5sum": "7f4ae12a098391bc0edcaf4f44caaf9d", + "version": "124-25d", + "filename": "c1700-adventerprisek9-mz.124-25d.image" + } + ] +} diff --git a/appliances/cisco-2600.gns3a b/appliances/cisco-2600.gns3a new file mode 100644 index 0000000..bcaa2d0 --- /dev/null +++ b/appliances/cisco-2600.gns3a @@ -0,0 +1,40 @@ +{ + + "category": "router", + "status": "experimental", + "maintainer": "GNS3 Team", + "name": "Cisco 2600", + "vendor_name": "Cisco", + "product_name": "2600", + "vendor_url": "http://www.cisco.com", + "description": "Cisco 2600 Router", + "registry_version": 2, + "maintainer_email": "developers@gns3.net", + "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", + + "dynamips": { + "platform": "c2600", + "chassis": "2610", + "ram": 160, + "nvram": 128, + "startup_config": "ios_base_startup-config.txt" + }, + + "versions": [ + { + "images": { + "image": "c2600-adventerprisek9-mz.124-15.T14.image" + }, + "idlepc": "0x8027ec88", + "name": "124-15.T14" + } + ], + "images": [ + { + "filesize": 87256400, + "md5sum": "483e3a579a5144ec23f2f160d4b0c0e2", + "version": "124-15.T14", + "filename": "c2600-adventerprisek9-mz.124-15.T14.image" + } + ] +} diff --git a/appliances/cisco-2691.gns3a b/appliances/cisco-2691.gns3a new file mode 100644 index 0000000..5ddc510 --- /dev/null +++ b/appliances/cisco-2691.gns3a @@ -0,0 +1,39 @@ +{ + "category": "router", + "status": "experimental", + "maintainer": "GNS3 Team", + "name": "Cisco 2691", + "vendor_name": "Cisco", + "product_name": "2691", + "vendor_url": "http://www.cisco.com", + "description": "Cisco 2691 Router", + "registry_version": 2, + "maintainer_email": "developers@gns3.net", + "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", + + "dynamips": { + "platform": "c3600", + "ram": 192, + "nvram": 256, + "slot0": "GT96100-FE", + "startup_config": "ios_base_startup-config.txt" + }, + + "versions": [ + { + "images": { + "image": "c2691-adventerprisek9-mz.124-15.T14.image" + }, + "idlepc": "0x60bcf9f8", + "name": "124-15.T14" + } + ], + "images": [ + { + "filesize": 95976624, + "md5sum": "e7ee5a4a57ed1433e5f73ba6e7695c90", + "version": "124-15.T14", + "filename": "c2691-adventerprisek9-mz.124-15.T14.image" + } + ] +} diff --git a/appliances/cisco-3620.gns3a b/appliances/cisco-3620.gns3a new file mode 100644 index 0000000..d97b96d --- /dev/null +++ b/appliances/cisco-3620.gns3a @@ -0,0 +1,39 @@ +{ + "category": "router", + "status": "experimental", + "maintainer": "GNS3 Team", + "name": "Cisco 3620", + "vendor_name": "Cisco", + "product_name": "3620", + "vendor_url": "http://www.cisco.com", + "description": "Cisco 3620 Router", + "registry_version": 2, + "maintainer_email": "developers@gns3.net", + "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", + + "dynamips": { + "platform": "c3600", + "chassis": "3620", + "ram": 192, + "nvram": 256, + "startup_config": "ios_base_startup-config.txt" + }, + + "versions": [ + { + "images": { + "image": "c3620-a3jk8s-mz.122-26c.image" + }, + "idlepc": "0x603a8bac", + "name": "122-26c" + } + ], + "images": [ + { + "filesize": 38947996, + "md5sum": "37b444b29191630e5b688f002de2171c", + "version": "122-26c", + "filename": "c3620-a3jk8s-mz.122-26c.image" + } + ] +} diff --git a/appliances/cisco-3640.gns3a b/appliances/cisco-3640.gns3a new file mode 100644 index 0000000..a442973 --- /dev/null +++ b/appliances/cisco-3640.gns3a @@ -0,0 +1,39 @@ +{ + "category": "router", + "status": "experimental", + "maintainer": "GNS3 Team", + "name": "Cisco 3640", + "vendor_name": "Cisco", + "product_name": "3640", + "vendor_url": "http://www.cisco.com", + "description": "Cisco 3640 Router", + "registry_version": 2, + "maintainer_email": "developers@gns3.net", + "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", + + "dynamips": { + "platform": "c3600", + "chassis": "3640", + "ram": 192, + "nvram": 256, + "startup_config": "ios_base_startup-config.txt" + }, + + "versions": [ + { + "images": { + "image": "c3640-a3js-mz.124-25d.image" + }, + "idlepc": "0x6050b114", + "name": "124-25d" + } + ], + "images": [ + { + "filesize": 65688632, + "md5sum": "493c4ef6578801d74d715e7d11596964", + "version": "124-25d", + "filename": "c3640-a3js-mz.124-25d.image" + } + ] +} diff --git a/appliances/cisco-3660.gns3a b/appliances/cisco-3660.gns3a new file mode 100644 index 0000000..65e2c28 --- /dev/null +++ b/appliances/cisco-3660.gns3a @@ -0,0 +1,39 @@ +{ + "category": "router", + "status": "experimental", + "maintainer": "GNS3 Team", + "name": "Cisco 3660", + "vendor_name": "Cisco", + "product_name": "3660", + "vendor_url": "http://www.cisco.com", + "description": "Cisco 3660 Router", + "registry_version": 2, + "maintainer_email": "developers@gns3.net", + "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", + + "dynamips": { + "platform": "c3600", + "chassis": "3660", + "ram": 192, + "nvram": 256, + "startup_config": "ios_base_startup-config.txt" + }, + + "versions": [ + { + "images": { + "image": "c3660-a3jk9s-mz.124-15.T14.image" + }, + "idlepc": "0x6076e0b4", + "name": "124-15.T14" + } + ], + "images": [ + { + "filesize": 90181268, + "md5sum": "daed99f508fd42dbaacf711e560643ed", + "version": "124-15.T14", + "filename": "c3660-a3jk9s-mz.124-15.T14.image" + } + ] +}