Justificació del desplegament
Per optimitzar els recursos dels nostres equips físics, hem creat un únic fitxer Vagrantfile que defineix tota la infraestructura. Tot i això, fem un desplegament distribuït: l’alumne 1 s’encarrega d’aixecar la zona client (vagrant up cli_router win_client) i l’alumne 2 la zona servidor (vagrant up srv_router dhcp_hosts ubuntu_ad). D’aquesta manera, treballem en equip i no saturem un sol ordinador.
Vagrantfile
# -- mode: ruby --
# vi: set ft=ruby :
Vagrant.configure("2") do |config|
# =========================================================
# 1. ENRUTADORES Y SERVIDORES LINUX (Lo que ya tenías)
# =========================================================
config.vm.define "srv_router" do |rtr1|
rtr1.vm.box = "debian_box"
rtr1.vm.network "private_network", ip: "10.10.1.1", netmask: "255.255.255.248", virtualbox__intnet: "srv_net"
rtr1.vm.network "public_network", ip: "172.25.211.12", netmask: "255.255.0.0", gateway: "172.25.130.254", bridge: "eth0"
rtr1.vm.provider "virtualbox" do |vb|
vb.gui = false
vb.memory = "512"
end
rtr1.vm.provision "shell", inline: <<-SHELL
ip route del default
ip route add default via 172.25.130.254
ip route add 10.10.2.0/28 via 172.25.213.12 dev enp0s8
SHELL
end
config.vm.define "cli_router" do |rtr2|
rtr2.vm.box = "debian_box"
rtr2.vm.network "private_network", ip: "10.10.2.1", netmask: "255.255.255.240", virtualbox__intnet: "cli_net"
rtr2.vm.network "public_network", ip: "172.25.213.12", netmask: "255.255.0.0", gateway: "172.25.130.254", bridge: "eth0"
rtr2.vm.provider "virtualbox" do |vb|
vb.gui = false
vb.memory = "512"
end
rtr2.vm.provision "shell", inline: <<-SHELL
ip route del default
ip route add default via 172.25.130.254
ip route add 10.10.1.0/29 via 172.25.211.12 dev enp0s9
SHELL
end
config.vm.define "dhcp_hosts" do |dhcp|
dhcp.vm.box = "debian_box"
dhcp.vm.network "private_network", ip: "10.10.1.2", netmask: "255.255.255.248", virtualbox__intnet: "srv_net", gateway: "10.10.1.1"
dhcp.vm.provider "virtualbox" do |vb|
vb.gui = false
vb.memory = "1024"
end
end
# =========================================================
# 2. MÁQUINAS WINDOWS (Añadidas para el reto del AD)
# =========================================================
# Windows 10 (Cliente) - Va en la red cli_net
config.vm.define "win_client" do |wcli|
wcli.vm.box = "w10 repte 1"
wcli.vm.hostname = "PC-Alumne1"
wcli.vm.network "private_network", ip: "10.10.2.2", netmask: "255.255.255.240", virtualbox__intnet: "cli_net"
wcli.vm.provider "virtualbox" do |vb|
vb.gui = true # Necesario para ver el escritorio
vb.memory = "2048" # Mínimo 2GB para Windows 10
vb.cpus = 2
end
end
# Ubuntu Server (Active Directory con Samba) - Red srv_net
config.vm.define "ubuntu_ad" do |uad|
uad.vm.box = "ubuntu/jammy64"
uad.vm.hostname = "UbuntuServerAD"
uad.vm.network "private_network", ip: "10.10.1.3", netmask: "255.255.255.248", virtualbox__intnet: "srv_net"
uad.vm.provider "virtualbox" do |vb|
vb.memory = "1024" # Con 1GB para Linux vamos sobrados
vb.cpus = 2
end
end
end
Prova de que funciona