Hallo Freunde.
Aktuell stehe ich vor einer kleinen Herausforderung, vielleicht kennt jemand sich ja in der Thematik ein wenig aus
Folgende Ausgangssituation. Wir haben ein Netzwerk in welchem sich ca. 60000 Clients auf einigen VLANs verteilt befinden, VLAN 405-480, und VLAN 700-750.
Diese Clients sollen über einen DHCP Server aus dem 10.20.0.0/16er Netz bedient werden.
Da dachte ich mir, das ist doch bestimmt kein Problem, aber nun stoße ich ein bisschen an die Grenze, den Arbeitsaufwand dafür einzugrenzen.
Ist es weiterhin möglich, beispielsweise mit isc-dhcp-server, ein DHCP Leases für ein und das gleiche Subnet über mehrere Interfaces, auszugeben?
Gibt es eine "schnellere" Möglichkeit, so eine große Menge an VLAN Subinterfaces zu erstellen unter Debian (Vielleicht Bash Scripts?), hat da jemand eventuell einen Rat zu?
Ich freue mich darauf von euch zu hören!
DHCP mit mehreren VLANs, und einem Subnet
Re: DHCP mit mehreren VLANs, und einem Subnet
Das wären 125 VLANs, allerdings solltest du bei der Netzgröße deutlich mehr an Infos bereitstellen um hilfreiche Unterstützung zu erhalten. z.B.: Die Frage nach der Konnektivität wäre wichtig, liegen die VLANs direkt am DHCP Server an (also 125 Netzwerkschnittstellen) oder habt ihr Switches im Einsatz die DHCP-Requests an den DHCP Server weiterleiten?Knogle hat geschrieben:25.11.2021 11:04:56Folgende Ausgangssituation. Wir haben ein Netzwerk in welchem sich ca. 60000 Clients auf einigen VLANs verteilt befinden, VLAN 405-480, und VLAN 700-750.
Ich würde ein Script schreiben und anhand eines Templates die 125 VLAN eigenen Ranges definieren, wenn du die Konfiguration in Dateien belassen willst oder du verwendest beispielsweise LDAP als Backend für deinen DHCP Server. Es hängt halt auch davon ab, ob du einheitliche VLANs hast oder ob du auch noch feste IP<->MAC Zuordnungen berücksichtigen musst.Knogle hat geschrieben:25.11.2021 11:04:56Gibt es eine "schnellere" Möglichkeit, so eine große Menge an VLAN Subinterfaces zu erstellen unter Debian (Vielleicht Bash Scripts?), hat da jemand eventuell einen Rat zu?
Re: DHCP mit mehreren VLANs, und einem Subnet
Herzlichen Dank!
Ja genau, also die 125 VLANs liegen als Trunk am Server an, eine DHCP Relay Variante wäre vermutlich einfacher im Handling gewesen, ist aber aktuell aufgrund von Lizenzkosten in Höhe von 25000 Euro für dieses Feature am Router nicht möglich.
Daher müsste ich demnach wohl 125 Subinterfaces anlegen in Debian, was natürlich initial ziemliche Anstrengung bedeutet. Bzw. vermutlich kriege ich das mit einem Bash Script mit for-Schleife hin.
Das mit den Templates klingt gut, jedoch kann ich aktuell nicht einschätzen wieviel Clients auf jeweils welchem VLAN liegen. Kann also sein, dass auf einem VLAN 10 Clients sind, und auf einem anderen 30000, daher kann ich da nicht genau die DHCP Ranges abschätzen.
Feste IP oder MAC Zuordnung sind keine vorhanden glücklicherweis.
Ja genau, also die 125 VLANs liegen als Trunk am Server an, eine DHCP Relay Variante wäre vermutlich einfacher im Handling gewesen, ist aber aktuell aufgrund von Lizenzkosten in Höhe von 25000 Euro für dieses Feature am Router nicht möglich.
Daher müsste ich demnach wohl 125 Subinterfaces anlegen in Debian, was natürlich initial ziemliche Anstrengung bedeutet. Bzw. vermutlich kriege ich das mit einem Bash Script mit for-Schleife hin.
Das mit den Templates klingt gut, jedoch kann ich aktuell nicht einschätzen wieviel Clients auf jeweils welchem VLAN liegen. Kann also sein, dass auf einem VLAN 10 Clients sind, und auf einem anderen 30000, daher kann ich da nicht genau die DHCP Ranges abschätzen.
Feste IP oder MAC Zuordnung sind keine vorhanden glücklicherweis.
Re: DHCP mit mehreren VLANs, und einem Subnet
Dann zieh doch mal eure Netzwerk-Dokumentation zu Rate, bei der Netzwerkgröße würde ich auch parallel dazu BSI IT Grundschutz mit beachten, nicht das dein DHCP Server am Ende die Netzwerksegmentierung und -sicherheit komplett unterwandert.Knogle hat geschrieben:25.11.2021 12:52:22Das mit den Templates klingt gut, jedoch kann ich aktuell nicht einschätzen wieviel Clients auf jeweils welchem VLAN liegen. Kann also sein, dass auf einem VLAN 10 Clients sind, und auf einem anderen 30000, daher kann ich da nicht genau die DHCP Ranges abschätzen.
Was du bisher so berichtest scheint das Netzwerk-Design da durchaus verbesserungswürdig
Wenn ich mal so den Schnitt 60.000 Clients / 125 VLANS annehme, dann bin komme ich auf 480 Rechner pro VLAN.
In meinen Vorstellungen von einem stabilen Netzwerk würde ich die Anzahl der VLANs verdreifachen um bei /24er Netzen auf unter 75% Nutzung zu kommen, schließlich brauchst du auch noch Kapazitäten für die Zukunft
Re: DHCP mit mehreren VLANs, und einem Subnet
Herzlichen Dank.
Ja ich habe mal die besprochenen Punkte von dir aufgegriffen, das Design bleibt im Grunde eigentlich unverändert, da das ganze als Übergangslösung für einige Monate agiert. (Ein Provisorium hält bekanntlich länger..) Aber naja.
Ich hatte leider einen kleinen Denkfehler drinnen, es handelt sich um einen /21er Pool für jedes VLAN. Hier mein Bash-Script um die entsprechenden nmcli Kommandos abzusetzen.
Nun stelle ich mir die Frage, ich möchte als Grundgerüst einen Debian Host aufsetzen, und dann eine VM via Qemu / KVM drauf betreiben welche ich über Cockpit-Machines manage.
Für jedes VLAN Interface muss ich daher noch eine Bridge erstellen, also Bridge405, 406 etc..
Wenn ich dann die Interfaces an die VM durchreiche haben die jedoch recht ungünstige Namen wie enp7s0, enp7s1 enp9s0 etc. Gibt es eine Möglichkeit die Interfaces auf dem Guest-System irgendwie sinnvoll zu bennenen beim Einsatz von KVM / Qemu?
Mein Programm zur Erstellung der dhcpd.conf
Viele Grüße
Ja ich habe mal die besprochenen Punkte von dir aufgegriffen, das Design bleibt im Grunde eigentlich unverändert, da das ganze als Übergangslösung für einige Monate agiert. (Ein Provisorium hält bekanntlich länger..) Aber naja.
Ich hatte leider einen kleinen Denkfehler drinnen, es handelt sich um einen /21er Pool für jedes VLAN. Hier mein Bash-Script um die entsprechenden nmcli Kommandos abzusetzen.
Code: Alles auswählen
#!/bin/bash
echo "Bash version ${BASH_VERSION}..."
k=0
for i in {405..431}
do
echo "nmcli con add type vlan con-name vlan-ens37.$i ifname ens37.$i dev ens37 id $i ip4 10.229.$k/21"
let "k=k+8"
done
Für jedes VLAN Interface muss ich daher noch eine Bridge erstellen, also Bridge405, 406 etc..
Code: Alles auswählen
#!/bin/bash
echo "Bash version ${BASH_VERSION}..."
k=0
for i in {405..431}
do
echo "nmcli con add ifname bridge$i type bridge con-name bridge$i"
echo "nmcli con add type bridge-slave ifname ens37.$i master bridge$i"
let "k=k+8"
done
Mein Programm zur Erstellung der dhcpd.conf
Code: Alles auswählen
#include <stdio.h>
#define ROUTER_ADDRESS 4
int main() {
int i,k;
for (i = 405; i < 431; ++i)
{
printf("\nsubnet 10.229.%d.0 netmask 255.255.248.0 {\n",k);
printf("# option routers 10.229.%d.%d;\n",k,ROUTER_ADDRESS);
printf(" option subnet-mask 255.255.248.0;\n");
printf("# option domain-name-servers 10.229.%d.%d;\n",k,ROUTER_ADDRESS);
printf(" range 10.229.%d.5 10.229.%d.254;\n",k,k+8-1);
printf("}\n\n");
k=k+8;
}
return 0;
}