Ver código fonte

reestructurado de ansible
falla conexion a routeros

pulitux 1 ano atrás
pai
commit
f1b72c617c
84 arquivos alterados com 185 adições e 121 exclusões
  1. 0 1
      .vagrant/bundler/global.sol
  2. 0 1
      .vagrant/machines/cisco1/virtualbox/action_provision
  3. 0 1
      .vagrant/machines/cisco1/virtualbox/action_set_name
  4. 0 1
      .vagrant/machines/cisco1/virtualbox/box_meta
  5. 0 1
      .vagrant/machines/cisco1/virtualbox/creator_uid
  6. 0 1
      .vagrant/machines/cisco1/virtualbox/id
  7. 0 1
      .vagrant/machines/cisco1/virtualbox/index_uuid
  8. 0 1
      .vagrant/machines/cisco1/virtualbox/synced_folders
  9. 0 1
      .vagrant/machines/cisco1/virtualbox/vagrant_cwd
  10. 0 1
      .vagrant/machines/cisco2/virtualbox/action_provision
  11. 0 1
      .vagrant/machines/cisco2/virtualbox/action_set_name
  12. 0 1
      .vagrant/machines/cisco2/virtualbox/box_meta
  13. 0 1
      .vagrant/machines/cisco2/virtualbox/creator_uid
  14. 0 1
      .vagrant/machines/cisco2/virtualbox/id
  15. 0 1
      .vagrant/machines/cisco2/virtualbox/index_uuid
  16. 0 1
      .vagrant/machines/cisco2/virtualbox/synced_folders
  17. 0 1
      .vagrant/machines/cisco2/virtualbox/vagrant_cwd
  18. 0 1
      .vagrant/machines/host_1_1/virtualbox/action_provision
  19. 0 1
      .vagrant/machines/host_1_1/virtualbox/action_set_name
  20. 0 1
      .vagrant/machines/host_1_1/virtualbox/box_meta
  21. 0 1
      .vagrant/machines/host_1_1/virtualbox/creator_uid
  22. 0 1
      .vagrant/machines/host_1_1/virtualbox/id
  23. 0 1
      .vagrant/machines/host_1_1/virtualbox/index_uuid
  24. 0 1
      .vagrant/machines/host_1_1/virtualbox/synced_folders
  25. 0 1
      .vagrant/machines/host_1_1/virtualbox/vagrant_cwd
  26. 0 1
      .vagrant/machines/host_1_2/virtualbox/action_provision
  27. 0 1
      .vagrant/machines/host_1_2/virtualbox/action_set_name
  28. 0 1
      .vagrant/machines/host_1_2/virtualbox/box_meta
  29. 0 1
      .vagrant/machines/host_1_2/virtualbox/creator_uid
  30. 0 1
      .vagrant/machines/host_1_2/virtualbox/id
  31. 0 1
      .vagrant/machines/host_1_2/virtualbox/index_uuid
  32. 0 1
      .vagrant/machines/host_1_2/virtualbox/synced_folders
  33. 0 1
      .vagrant/machines/host_1_2/virtualbox/vagrant_cwd
  34. 0 1
      .vagrant/machines/host_2_1/virtualbox/action_provision
  35. 0 1
      .vagrant/machines/host_2_1/virtualbox/action_set_name
  36. 0 1
      .vagrant/machines/host_2_1/virtualbox/box_meta
  37. 0 1
      .vagrant/machines/host_2_1/virtualbox/creator_uid
  38. 0 1
      .vagrant/machines/host_2_1/virtualbox/id
  39. 0 1
      .vagrant/machines/host_2_1/virtualbox/index_uuid
  40. 0 1
      .vagrant/machines/host_2_1/virtualbox/synced_folders
  41. 0 1
      .vagrant/machines/host_2_1/virtualbox/vagrant_cwd
  42. 0 1
      .vagrant/machines/host_2_2/virtualbox/action_provision
  43. 0 1
      .vagrant/machines/host_2_2/virtualbox/action_set_name
  44. 0 1
      .vagrant/machines/host_2_2/virtualbox/box_meta
  45. 0 1
      .vagrant/machines/host_2_2/virtualbox/creator_uid
  46. 0 1
      .vagrant/machines/host_2_2/virtualbox/id
  47. 0 1
      .vagrant/machines/host_2_2/virtualbox/index_uuid
  48. 0 1
      .vagrant/machines/host_2_2/virtualbox/synced_folders
  49. 0 1
      .vagrant/machines/host_2_2/virtualbox/vagrant_cwd
  50. 1 0
      .vagrant/machines/router_1/virtualbox/action_provision
  51. 1 0
      .vagrant/machines/router_1/virtualbox/action_set_name
  52. 1 0
      .vagrant/machines/router_1/virtualbox/box_meta
  53. 1 0
      .vagrant/machines/router_1/virtualbox/creator_uid
  54. 1 0
      .vagrant/machines/router_1/virtualbox/id
  55. 1 0
      .vagrant/machines/router_1/virtualbox/index_uuid
  56. 1 0
      .vagrant/machines/router_1/virtualbox/synced_folders
  57. 1 0
      .vagrant/machines/router_1/virtualbox/vagrant_cwd
  58. 0 1
      .vagrant/machines/workstation1/virtualbox/action_provision
  59. 0 1
      .vagrant/machines/workstation1/virtualbox/action_set_name
  60. 0 1
      .vagrant/machines/workstation1/virtualbox/box_meta
  61. 0 1
      .vagrant/machines/workstation1/virtualbox/creator_uid
  62. 0 1
      .vagrant/machines/workstation1/virtualbox/id
  63. 0 1
      .vagrant/machines/workstation1/virtualbox/index_uuid
  64. 0 1
      .vagrant/machines/workstation1/virtualbox/synced_folders
  65. 0 1
      .vagrant/machines/workstation1/virtualbox/vagrant_cwd
  66. 0 1
      .vagrant/machines/workstation2/virtualbox/action_provision
  67. 0 1
      .vagrant/machines/workstation2/virtualbox/action_set_name
  68. 0 1
      .vagrant/machines/workstation2/virtualbox/box_meta
  69. 0 1
      .vagrant/machines/workstation2/virtualbox/creator_uid
  70. 0 1
      .vagrant/machines/workstation2/virtualbox/id
  71. 0 1
      .vagrant/machines/workstation2/virtualbox/index_uuid
  72. 0 1
      .vagrant/machines/workstation2/virtualbox/synced_folders
  73. 0 1
      .vagrant/machines/workstation2/virtualbox/vagrant_cwd
  74. 4 8
      .vagrant/provisioners/ansible/inventory/vagrant_ansible_inventory
  75. 3 0
      .vagrant/rgloader/loader.rb
  76. 65 43
      Vagrantfile
  77. 27 0
      provision/computers.yml
  78. 4 0
      provision/host_vars/router_1.yml
  79. 4 0
      provision/host_vars/router_2.yml
  80. 15 0
      provision/inventory.ini
  81. 41 0
      provision/routers.yml
  82. 2 2
      provision/servers.yml
  83. 9 0
      provision/templates/hosts.j2
  84. 3 3
      provision/workstations.yml

Diferenças do arquivo suprimidas por serem muito extensas
+ 0 - 1
.vagrant/bundler/global.sol


+ 0 - 1
.vagrant/machines/cisco1/virtualbox/action_provision

@@ -1 +0,0 @@
-1.5:5b3e89fc-775f-476d-82fa-5c2f02ee6839

+ 0 - 1
.vagrant/machines/cisco1/virtualbox/action_set_name

@@ -1 +0,0 @@
-1726878118

+ 0 - 1
.vagrant/machines/cisco1/virtualbox/box_meta

@@ -1 +0,0 @@
-{"name":"pulitux/csr1kv","version":"17.03.04","provider":"virtualbox","directory":"boxes/pulitux-VAGRANTSLASH-csr1kv/17.03.04/virtualbox"}

+ 0 - 1
.vagrant/machines/cisco1/virtualbox/creator_uid

@@ -1 +0,0 @@
-999

+ 0 - 1
.vagrant/machines/cisco1/virtualbox/id

@@ -1 +0,0 @@
-5b3e89fc-775f-476d-82fa-5c2f02ee6839

+ 0 - 1
.vagrant/machines/cisco1/virtualbox/index_uuid

@@ -1 +0,0 @@
-ca96972451ae4eee9d35d53fa72c9bbc

+ 0 - 1
.vagrant/machines/cisco1/virtualbox/synced_folders

@@ -1 +0,0 @@
-{"virtualbox":{"/vagrant":{"guestpath":"/vagrant","hostpath":"/home/ubuntu-mate/wstations","disabled":false,"__vagrantfile":true}}}

+ 0 - 1
.vagrant/machines/cisco1/virtualbox/vagrant_cwd

@@ -1 +0,0 @@
-/home/ubuntu-mate/wstations

+ 0 - 1
.vagrant/machines/cisco2/virtualbox/action_provision

@@ -1 +0,0 @@
-1.5:8a73285a-b825-48f9-b915-dbf5d0469f6f

+ 0 - 1
.vagrant/machines/cisco2/virtualbox/action_set_name

@@ -1 +0,0 @@
-1726878835

+ 0 - 1
.vagrant/machines/cisco2/virtualbox/box_meta

@@ -1 +0,0 @@
-{"name":"pulitux/csr1kv","version":"17.03.04","provider":"virtualbox","directory":"boxes/pulitux-VAGRANTSLASH-csr1kv/17.03.04/virtualbox"}

+ 0 - 1
.vagrant/machines/cisco2/virtualbox/creator_uid

@@ -1 +0,0 @@
-999

+ 0 - 1
.vagrant/machines/cisco2/virtualbox/id

@@ -1 +0,0 @@
-8a73285a-b825-48f9-b915-dbf5d0469f6f

+ 0 - 1
.vagrant/machines/cisco2/virtualbox/index_uuid

@@ -1 +0,0 @@
-3ab4765189674519ab776ce6eecc2558

+ 0 - 1
.vagrant/machines/cisco2/virtualbox/synced_folders

@@ -1 +0,0 @@
-{"virtualbox":{"/vagrant":{"guestpath":"/vagrant","hostpath":"/home/ubuntu-mate/wstations","disabled":false,"__vagrantfile":true}}}

+ 0 - 1
.vagrant/machines/cisco2/virtualbox/vagrant_cwd

@@ -1 +0,0 @@
-/home/ubuntu-mate/wstations

+ 0 - 1
.vagrant/machines/host_1_1/virtualbox/action_provision

@@ -1 +0,0 @@
-1.5:b95a3317-23fd-4e05-a4ac-c72e7df411a4

+ 0 - 1
.vagrant/machines/host_1_1/virtualbox/action_set_name

@@ -1 +0,0 @@
-1726878378

+ 0 - 1
.vagrant/machines/host_1_1/virtualbox/box_meta

@@ -1 +0,0 @@
-{"name":"ubuntu/jammy64","version":"20240912.0.0","provider":"virtualbox","directory":"boxes/ubuntu-VAGRANTSLASH-jammy64/20240912.0.0/virtualbox"}

+ 0 - 1
.vagrant/machines/host_1_1/virtualbox/creator_uid

@@ -1 +0,0 @@
-999

+ 0 - 1
.vagrant/machines/host_1_1/virtualbox/id

@@ -1 +0,0 @@
-b95a3317-23fd-4e05-a4ac-c72e7df411a4

+ 0 - 1
.vagrant/machines/host_1_1/virtualbox/index_uuid

@@ -1 +0,0 @@
-d40fc18bfbff485a90ae228c676b4a9a

+ 0 - 1
.vagrant/machines/host_1_1/virtualbox/synced_folders

@@ -1 +0,0 @@
-{"virtualbox":{"/vagrant":{"guestpath":"/vagrant","hostpath":"/home/ubuntu-mate/wstations","disabled":false,"__vagrantfile":true}}}

+ 0 - 1
.vagrant/machines/host_1_1/virtualbox/vagrant_cwd

@@ -1 +0,0 @@
-/home/ubuntu-mate/wstations

+ 0 - 1
.vagrant/machines/host_1_2/virtualbox/action_provision

@@ -1 +0,0 @@
-1.5:777fd42f-d0d9-491c-a924-aa23c3107747

+ 0 - 1
.vagrant/machines/host_1_2/virtualbox/action_set_name

@@ -1 +0,0 @@
-1726878409

+ 0 - 1
.vagrant/machines/host_1_2/virtualbox/box_meta

@@ -1 +0,0 @@
-{"name":"ubuntu/jammy64","version":"20240912.0.0","provider":"virtualbox","directory":"boxes/ubuntu-VAGRANTSLASH-jammy64/20240912.0.0/virtualbox"}

+ 0 - 1
.vagrant/machines/host_1_2/virtualbox/creator_uid

@@ -1 +0,0 @@
-999

+ 0 - 1
.vagrant/machines/host_1_2/virtualbox/id

@@ -1 +0,0 @@
-777fd42f-d0d9-491c-a924-aa23c3107747

+ 0 - 1
.vagrant/machines/host_1_2/virtualbox/index_uuid

@@ -1 +0,0 @@
-025fd8fc617c470bb8bc92a4350eb95f

+ 0 - 1
.vagrant/machines/host_1_2/virtualbox/synced_folders

@@ -1 +0,0 @@
-{"virtualbox":{"/vagrant":{"guestpath":"/vagrant","hostpath":"/home/ubuntu-mate/wstations","disabled":false,"__vagrantfile":true}}}

+ 0 - 1
.vagrant/machines/host_1_2/virtualbox/vagrant_cwd

@@ -1 +0,0 @@
-/home/ubuntu-mate/wstations

+ 0 - 1
.vagrant/machines/host_2_1/virtualbox/action_provision

@@ -1 +0,0 @@
-1.5:1c6442c0-56db-4353-ab16-07ab8228c0cf

+ 0 - 1
.vagrant/machines/host_2_1/virtualbox/action_set_name

@@ -1 +0,0 @@
-1726879064

+ 0 - 1
.vagrant/machines/host_2_1/virtualbox/box_meta

@@ -1 +0,0 @@
-{"name":"ubuntu/jammy64","version":"20240912.0.0","provider":"virtualbox","directory":"boxes/ubuntu-VAGRANTSLASH-jammy64/20240912.0.0/virtualbox"}

+ 0 - 1
.vagrant/machines/host_2_1/virtualbox/creator_uid

@@ -1 +0,0 @@
-999

+ 0 - 1
.vagrant/machines/host_2_1/virtualbox/id

@@ -1 +0,0 @@
-1c6442c0-56db-4353-ab16-07ab8228c0cf

+ 0 - 1
.vagrant/machines/host_2_1/virtualbox/index_uuid

@@ -1 +0,0 @@
-712cc25038084172a8528e718cf0331e

+ 0 - 1
.vagrant/machines/host_2_1/virtualbox/synced_folders

@@ -1 +0,0 @@
-{"virtualbox":{"/vagrant":{"guestpath":"/vagrant","hostpath":"/home/ubuntu-mate/wstations","disabled":false,"__vagrantfile":true}}}

+ 0 - 1
.vagrant/machines/host_2_1/virtualbox/vagrant_cwd

@@ -1 +0,0 @@
-/home/ubuntu-mate/wstations

+ 0 - 1
.vagrant/machines/host_2_2/virtualbox/action_provision

@@ -1 +0,0 @@
-1.5:2618a772-2b7e-489c-93cc-47d5036e2cc6

+ 0 - 1
.vagrant/machines/host_2_2/virtualbox/action_set_name

@@ -1 +0,0 @@
-1726879097

+ 0 - 1
.vagrant/machines/host_2_2/virtualbox/box_meta

@@ -1 +0,0 @@
-{"name":"ubuntu/jammy64","version":"20240912.0.0","provider":"virtualbox","directory":"boxes/ubuntu-VAGRANTSLASH-jammy64/20240912.0.0/virtualbox"}

+ 0 - 1
.vagrant/machines/host_2_2/virtualbox/creator_uid

@@ -1 +0,0 @@
-999

+ 0 - 1
.vagrant/machines/host_2_2/virtualbox/id

@@ -1 +0,0 @@
-2618a772-2b7e-489c-93cc-47d5036e2cc6

+ 0 - 1
.vagrant/machines/host_2_2/virtualbox/index_uuid

@@ -1 +0,0 @@
-f6d12b5416084373949f8ac8ec592eb5

+ 0 - 1
.vagrant/machines/host_2_2/virtualbox/synced_folders

@@ -1 +0,0 @@
-{"virtualbox":{"/vagrant":{"guestpath":"/vagrant","hostpath":"/home/ubuntu-mate/wstations","disabled":false,"__vagrantfile":true}}}

+ 0 - 1
.vagrant/machines/host_2_2/virtualbox/vagrant_cwd

@@ -1 +0,0 @@
-/home/ubuntu-mate/wstations

+ 1 - 0
.vagrant/machines/router_1/virtualbox/action_provision

@@ -0,0 +1 @@
+1.5:63898e54-e2f1-46ac-94b1-3aa2c5e58343

+ 1 - 0
.vagrant/machines/router_1/virtualbox/action_set_name

@@ -0,0 +1 @@
+1727047642

+ 1 - 0
.vagrant/machines/router_1/virtualbox/box_meta

@@ -0,0 +1 @@
+{"name":"pulitux/csr1kv","version":"17.03.04","provider":"virtualbox","directory":"boxes/pulitux-VAGRANTSLASH-csr1kv/17.03.04/amd64/virtualbox"}

+ 1 - 0
.vagrant/machines/router_1/virtualbox/creator_uid

@@ -0,0 +1 @@
+1000

+ 1 - 0
.vagrant/machines/router_1/virtualbox/id

@@ -0,0 +1 @@
+63898e54-e2f1-46ac-94b1-3aa2c5e58343

+ 1 - 0
.vagrant/machines/router_1/virtualbox/index_uuid

@@ -0,0 +1 @@
+53538b1ff9f74f6daeea05fe21b7cf15

+ 1 - 0
.vagrant/machines/router_1/virtualbox/synced_folders

@@ -0,0 +1 @@
+{"virtualbox":{"/vagrant":{"guestpath":"/vagrant","hostpath":"/home/pulitux/net_labs/wstations","disabled":false,"__vagrantfile":true}}}

+ 1 - 0
.vagrant/machines/router_1/virtualbox/vagrant_cwd

@@ -0,0 +1 @@
+/home/pulitux/net_labs/wstations

+ 0 - 1
.vagrant/machines/workstation1/virtualbox/action_provision

@@ -1 +0,0 @@
-1.5:8c65afe0-df1e-47cc-9eba-c9953862d2c3

+ 0 - 1
.vagrant/machines/workstation1/virtualbox/action_set_name

@@ -1 +0,0 @@
-1726878441

+ 0 - 1
.vagrant/machines/workstation1/virtualbox/box_meta

@@ -1 +0,0 @@
-{"name":"ubuntu/jammy64","version":"20240912.0.0","provider":"virtualbox","directory":"boxes/ubuntu-VAGRANTSLASH-jammy64/20240912.0.0/virtualbox"}

+ 0 - 1
.vagrant/machines/workstation1/virtualbox/creator_uid

@@ -1 +0,0 @@
-999

+ 0 - 1
.vagrant/machines/workstation1/virtualbox/id

@@ -1 +0,0 @@
-8c65afe0-df1e-47cc-9eba-c9953862d2c3

+ 0 - 1
.vagrant/machines/workstation1/virtualbox/index_uuid

@@ -1 +0,0 @@
-a727ad8b5275445e872fd10907620e82

+ 0 - 1
.vagrant/machines/workstation1/virtualbox/synced_folders

@@ -1 +0,0 @@
-{"virtualbox":{"/vagrant":{"guestpath":"/vagrant","hostpath":"/home/ubuntu-mate/wstations","disabled":false,"__vagrantfile":true}}}

+ 0 - 1
.vagrant/machines/workstation1/virtualbox/vagrant_cwd

@@ -1 +0,0 @@
-/home/ubuntu-mate/wstations

+ 0 - 1
.vagrant/machines/workstation2/virtualbox/action_provision

@@ -1 +0,0 @@
-1.5:e3232557-0e93-490c-9ed2-2e945a7523cc

+ 0 - 1
.vagrant/machines/workstation2/virtualbox/action_set_name

@@ -1 +0,0 @@
-1726879129

+ 0 - 1
.vagrant/machines/workstation2/virtualbox/box_meta

@@ -1 +0,0 @@
-{"name":"ubuntu/jammy64","version":"20240912.0.0","provider":"virtualbox","directory":"boxes/ubuntu-VAGRANTSLASH-jammy64/20240912.0.0/virtualbox"}

+ 0 - 1
.vagrant/machines/workstation2/virtualbox/creator_uid

@@ -1 +0,0 @@
-999

+ 0 - 1
.vagrant/machines/workstation2/virtualbox/id

@@ -1 +0,0 @@
-e3232557-0e93-490c-9ed2-2e945a7523cc

+ 0 - 1
.vagrant/machines/workstation2/virtualbox/index_uuid

@@ -1 +0,0 @@
-7e6668f0ebca4d519fff774ada7e7a08

+ 0 - 1
.vagrant/machines/workstation2/virtualbox/synced_folders

@@ -1 +0,0 @@
-{"virtualbox":{"/vagrant":{"guestpath":"/vagrant","hostpath":"/home/ubuntu-mate/wstations","disabled":false,"__vagrantfile":true}}}

+ 0 - 1
.vagrant/machines/workstation2/virtualbox/vagrant_cwd

@@ -1 +0,0 @@
-/home/ubuntu-mate/wstations

+ 4 - 8
.vagrant/provisioners/ansible/inventory/vagrant_ansible_inventory

@@ -1,10 +1,6 @@
 # Generated by Vagrant
 
-host_2_1 ansible_ssh_host=127.0.0.1 ansible_ssh_port=2204 ansible_ssh_user='vagrant' ansible_ssh_private_key_file='/home/ubuntu-mate/.vagrant.d/insecure_private_keys/vagrant.key.ed25519'
-host_1_2 ansible_ssh_host=127.0.0.1 ansible_ssh_port=2201 ansible_ssh_user='vagrant' ansible_ssh_private_key_file='/home/ubuntu-mate/.vagrant.d/insecure_private_keys/vagrant.key.ed25519'
-cisco2 ansible_ssh_host=127.0.0.1 ansible_ssh_port=2203 ansible_ssh_user='vagrant' ansible_ssh_private_key_file='/home/ubuntu-mate/.vagrant.d/insecure_private_keys/vagrant.key.ed25519'
-host_1_1 ansible_ssh_host=127.0.0.1 ansible_ssh_port=2200 ansible_ssh_user='vagrant' ansible_ssh_private_key_file='/home/ubuntu-mate/.vagrant.d/insecure_private_keys/vagrant.key.ed25519'
-workstation1 ansible_ssh_host=127.0.0.1 ansible_ssh_port=2202 ansible_ssh_user='vagrant' ansible_ssh_private_key_file='/home/ubuntu-mate/.vagrant.d/insecure_private_keys/vagrant.key.ed25519'
-workstation2 ansible_ssh_host=127.0.0.1 ansible_ssh_port=2206 ansible_ssh_user='vagrant' ansible_ssh_private_key_file='/home/ubuntu-mate/.vagrant.d/insecure_private_keys/vagrant.key.ed25519'
-cisco1 ansible_ssh_host=127.0.0.1 ansible_ssh_port=2222 ansible_ssh_user='vagrant' ansible_ssh_private_key_file='/home/ubuntu-mate/.vagrant.d/insecure_private_keys/vagrant.key.ed25519'
-host_2_2 ansible_ssh_host=127.0.0.1 ansible_ssh_port=2205 ansible_ssh_user='vagrant' ansible_ssh_private_key_file='/home/ubuntu-mate/.vagrant.d/insecure_private_keys/vagrant.key.ed25519'
+router_1 ansible_ssh_host=127.0.0.1 ansible_ssh_port=2222 ansible_ssh_user='vagrant' ansible_ssh_private_key_file='/home/pulitux/.vagrant.d/insecure_private_keys/vagrant.key.ed25519'
+
+[routers]
+router_1

+ 3 - 0
.vagrant/rgloader/loader.rb

@@ -1,3 +1,6 @@
+# Copyright (c) HashiCorp, Inc.
+# SPDX-License-Identifier: BUSL-1.1
+
 # This file loads the proper rgloader/loader.rb file that comes packaged
 # with Vagrant so that encoded files can properly run with Vagrant.
 

+ 65 - 43
Vagrantfile

@@ -1,48 +1,48 @@
 Vagrant.configure("2") do |config|
+  # Configuración general de las maquinas
+  config.vm.provider "virtualbox" do |v|
+    v.linked_clone = true
+    v.customize ["modifyvm", :id, "--groups", "/lab1"]
+    v.customize ["modifyvm", :id, "--pagefusion", "on"]
+  end
+  
+  # config.vm.provision :ansible do |ansible|
+  #   # Definicion de los grupos de maquinas
+  #   ansible.groups = {
+  #     "red_1" => ["router_1", "workstation_1", "server_1_[1:2]"],
+  #     "red_2" => ["router_2", "workstation_2", "server_2_[1:2]"],
+  #     "workstations" => ["workstation_1", "workstation_2"],
+  #     "routers" => ["router_1", "router_2"],
+  #     "servers" => ["server_[1:2]_[1:2]"],
+  #     "computers:children" => ["workstations", "servers"]
+  #   }
+  #   ansible.playbook = "provision/computers.yml"
+  # end
 
   (1..2).each do |j|
 
     ##################################
-    # Creación de los routers Cisco
+    # Creación de los routers router_
     ##################################
 
     config.vbguest.auto_update = false
     config.ssh.insert_key = false
-    config.vm.define "cisco#{j}" do |router|
+    config.vm.define "router_#{j}" do |router|
       router.vm.box = "pulitux/csr1kv"
       router.vm.box_version = "17.03.04"
-      router.vm.hostname = "ciscorouter#{j}"
-      router.vm.network "private_network", virtualbox__intnet: "red_interna#{j}", ip: "10.1.#{j}.1", auto_config: false
-      router.vm.network "private_network",  virtualbox__intnet: "red_externa#{j}", ip: "20.1.1.#{j}", auto_config: false
+      router.vm.hostname = "router#{j}"
+      router.vm.network "private_network", virtualbox__intnet: "red_#{j}", ip: "10.1.#{j}.1", auto_config: false
+      router.vm.network "private_network",  virtualbox__intnet: "red_externa", ip: "10.0.1.#{j}", auto_config: false
       router.vm.provider "virtualbox" do |vb|
-        vb.name = "cisco#{j}"
+        vb.name = "router_#{j}"
         vb.memory = "2048"
-        vb.linked_clone = true
-        vb.customize ["modifyvm", :id, "--groups", "/lab1"]
-        vb.customize ["modifyvm", :id, "--pagefusion", "on"]
       end
-    end
-
-    ####################################################
-    # Creación de las máquinas Hosts Ubuntu
-    ####################################################
-
-    (1..2).each do |i|
-      config.vm.define "host_#{j}_#{i}" do |host|
-        host.vm.box = "ubuntu/jammy64"
-        host.vm.hostname = "workstation#{j}#{i}"
-        host.vm.network "private_network", ip: "10.1.#{j}.10#{i}"
-        host.vm.provider "virtualbox" do |vb|
-          vb.memory ="512"
-          vb.name = "host_#{j}_#{i}"
-          vb.linked_clone = true
-          vb.customize ["modifyvm", :id, "--groups", "/lab1"]
-          vb.customize ["modifyvm", :id, "--pagefusion", "on"]
-        end
-        host.vm.provision :ansible do |ansible|
-          ansible.limit = "all"
-          ansible.playbook = "provision/hosts.yml"
-        end
+      router.vm.provision :ansible do |ansible|
+        ansible.limit = "routers"
+        ansible.playbook = "provision/routers.yml"
+        ansible.groups = {
+          "routers" => ["router_1", "router_2"]
+        }
       end
     end
 
@@ -50,22 +50,44 @@ Vagrant.configure("2") do |config|
     # Creación de las máquinas Workstations Ubuntu
     ################################################
 
-    config.vm.define "workstation#{j}" do |workstation|
-      workstation.vm.box = "ubuntu/jammy64"
-      workstation.vm.hostname = "workstation#{j}"
-      workstation.vm.network "private_network", ip: "10.1.#{j}.100"
-      workstation.vm.provider "virtualbox" do |vb|
-        vb.name = "workstation#{j}"
+    config.vm.define "workstation_#{j}" do |workstation_|
+      workstation_.vm.box = "ubuntu/jammy64"
+      workstation_.vm.hostname = "workstation#{j}"
+      workstation_.vm.network "private_network", ip: "10.1.#{j}.100", auto_config: false
+      workstation_.vm.provider "virtualbox" do |vb|
+        vb.name = "workstation_#{j}"
         vb.memory = "2048"
-        vb.linked_clone = true
-        vb.customize ["modifyvm", :id, "--groups", "/lab1"]
-        vb.customize ["modifyvm", :id, "--pagefusion", "on"]
       end
-      workstation.vm.provision :ansible do |ansible|
-        ansible.limit = "all"
+      workstation_.vm.provision :ansible do |ansible|
+        ansible.limit = "workstations"
         ansible.playbook = "provision/workstations.yml" 
+        ansible.groups = {
+          "workstations" => ["workstation_1", "workstation_2"]
+        }
+    end
+
+    ####################################################
+    # Creación de las máquinas servers Ubuntu
+    ####################################################
+
+    (1..2).each do |i|
+      config.vm.define "server_#{j}_#{i}" do |server|
+        server.vm.box = "ubuntu/jammy64"
+        server.vm.hostname = "server#{j}#{i}"
+        server.vm.network "private_network", ip: "10.1.#{j}.10#{i}", auto_config: false
+        server.vm.provider "virtualbox" do |vb|
+          vb.memory ="512"
+          vb.name = "server_#{j}_#{i}"
+        end
+        server.vm.provision :ansible do |ansible|
+          ansible.limit = "servers"
+          ansible.playbook = "provision/servers.yml"
+          ansible.groups = {
+            "servers" => ["server_[1:2]_[1:2]"]
+          }
+        end
       end
     end
   end
 end
-
+end

+ 27 - 0
provision/computers.yml

@@ -0,0 +1,27 @@
+---
+- name: Actualizar el archivo /etc/hosts en todos los equipos del inventario
+  hosts: equipos
+  become: yes
+  tasks:
+    - name: Leer el contenido actual del archivo /etc/hosts
+      ansible.builtin.slurp:
+        path: /etc/hosts
+      register: current_hosts
+
+    - name: Generar el contenido actualizado del archivo /etc/hosts
+      ansible.builtin.template:
+        src: templates/hosts.j2
+        dest: /etc/hosts
+        owner: root
+        group: root
+        mode: '0644'
+      vars:
+        current_hosts_content: "{{ current_hosts.content | b64decode }}"
+      notify:
+        - Reiniciar servicio de red si es necesario
+
+  handlers:
+    - name: Reiniciar servicio de red si es necesario
+      ansible.builtin.service:
+        name: network
+        state: restarted

+ 4 - 0
provision/host_vars/router_1.yml

@@ -0,0 +1,4 @@
+wan_interface_ip: 10.0.1.1
+lan_interface_ip: 10.1.1.1
+wan_network: 10.0.1.0
+lan_network: 10.1.1.0

+ 4 - 0
provision/host_vars/router_2.yml

@@ -0,0 +1,4 @@
+wan_interface_ip: 10.0.1.2
+lan_interface_ip: 10.1.2.1
+wan_network: 10.0.1.0
+lan_network: 10.1.2.0

+ 15 - 0
provision/inventory.ini

@@ -0,0 +1,15 @@
+[routers]
+cisco1
+cisco2
+[workstations]
+workstation1
+workstation2
+[nodes]
+node_1_1
+node_1_2
+node_2_1
+node_2_2
+[equipos:children]
+workstations
+nodes
+

+ 41 - 0
provision/routers.yml

@@ -0,0 +1,41 @@
+---
+- name: Configurar routers Cisco 
+  hosts: routers
+  gather_facts: no
+  become: yes
+  vars: # for execution environment
+    ansible_connection: ansible.netcommon.network_cli
+    ansible_network_os: cisco.ios.ios
+  
+  tasks:
+    - name: Configurar interfaces GigabitEthernet
+      ansible.netcommon.cli_command:
+        command:
+          - "interface GigabitEthernet1"
+          - "ip address {{ wan_ip }} 255.255.255.0"
+          - "no shutdown"
+          - "exit"
+          - "interface GigabitEthernet2"
+          - "ip address {{ lan_ip }} 255.255.255.0"
+          - "no shutdown"
+          - "exit"
+      vars:
+        wan_ip: "{{ wan_interface_ip }}"
+        lan_ip: "{{ lan_interface_ip }}"
+    
+    - name: Configurar RIPv2 en el router
+      ansible.netcommon.cli_command:
+        command:
+          - "router rip"
+          - "version 2"
+          - "network {{ wan_network }}"
+          - "network {{ lan_network }}"
+          - "no auto-summary"
+      vars:
+        wan_network: "{{ wan_network }}"
+        lan_network: "{{ lan_network }}"
+
+    - name: Guardar la configuración en la NVRAM
+      ansible.netcommon.cli_command:
+        command:
+          - "write memory"

+ 2 - 2
provision/hosts.yml → provision/servers.yml

@@ -1,5 +1,5 @@
 - name: Paris
-  hosts: host_1_1, host_2_1
+  hosts: servers
   become: yes
   gather_facts: no
   tasks:
@@ -9,7 +9,7 @@
         state: touch
 
 - name: New York
-  hosts: host_1_2, host_2_2
+  hosts: servers
   become: yes
   gather_facts: no
   tasks:

+ 9 - 0
provision/templates/hosts.j2

@@ -0,0 +1,9 @@
+# Archivo /etc/hosts generado por Ansible
+
+# Contenido actual del archivo /etc/hosts
+{{ current_hosts_content }}
+
+# Información de todos los hosts del inventario
+{% for host in groups['all'] %}
+{{ hostvars[host]['ansible_host'] }} {{ host }} {{ hostvars[host]['ansible_fqdn'] | default('') }}
+{% endfor %}

+ 3 - 3
provision/workstations.yml

@@ -1,5 +1,5 @@
 - name: Madrid
-  hosts: workstation1, workstation2
+  hosts: workstations
   become: yes
   gather_facts: no
   tasks:
@@ -10,8 +10,8 @@
 
 # Instalar ubuntu-mate-desktop y wireshark en workstation11 y workstation21
 
-- name: Instalar ubuntu-mate-desktop y wireshark en workstation11 y workstation21
-  hosts: workstation1, workstation2
+- name: Instalar ubuntu-mate-desktop y wireshark en workstations
+  hosts: workstations
   become: yes
   gather_facts: no
   tasks:

Alguns arquivos não foram mostrados porque muitos arquivos mudaram nesse diff