Initial commit: meraki network configuration
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
# Búsqueda automática de IDs (Data Sources)
|
||||
data "meraki_organization" "org" {
|
||||
name = var.organization_name
|
||||
}
|
||||
|
||||
data "meraki_networks" "net" {
|
||||
organization_id = data.meraki_organization.org.id
|
||||
}
|
||||
|
||||
# Local para extraer el network_id exacto de la lista de redes
|
||||
locals {
|
||||
network_id = [for n in data.meraki_networks.net.items : n.id if n.name == var.network_name][0]
|
||||
}
|
||||
|
||||
# --- CONFIGURACIÓN GATEWAY (MX) ---
|
||||
|
||||
# 1. Activar VLANs en el Appliance (MX)
|
||||
resource "meraki_appliance_vlans_settings" "activate_vlans" {
|
||||
network_id = local.network_id
|
||||
vlans_enabled = true
|
||||
}
|
||||
|
||||
# 2. Crear las interfaces L3 y VLANs en el MX
|
||||
resource "meraki_appliance_vlan" "mx_gateways" {
|
||||
for_each = var.switch_vlans
|
||||
depends_on = [meraki_appliance_vlans_settings.activate_vlans]
|
||||
|
||||
network_id = local.network_id
|
||||
vlan_id = each.key
|
||||
name = each.value.name
|
||||
subnet = each.value.subnet
|
||||
appliance_ip = each.value.appliance_ip
|
||||
reserved_ip_ranges = each.value.reserved_ip_ranges
|
||||
dhcp_handling = each.value.dhcp_handling
|
||||
}
|
||||
|
||||
# 3. Reglas de firewall L3
|
||||
resource "meraki_appliance_l3_firewall_rules" "reglas_firewall" {
|
||||
network_id = local.network_id
|
||||
rules = var.firewall_rules
|
||||
}
|
||||
Reference in New Issue
Block a user