summaryrefslogtreecommitdiffstats
path: root/ldap-site-mngmt/webinterface/dhcp
diff options
context:
space:
mode:
Diffstat (limited to 'ldap-site-mngmt/webinterface/dhcp')
-rw-r--r--ldap-site-mngmt/webinterface/dhcp/dhcp.dwt18
-rw-r--r--ldap-site-mngmt/webinterface/dhcp/dhcp_menu.php67
-rw-r--r--ldap-site-mngmt/webinterface/dhcp/dhcppool.dwt41
-rw-r--r--ldap-site-mngmt/webinterface/dhcp/dhcppool.php43
-rw-r--r--ldap-site-mngmt/webinterface/dhcp/dhcppool_add.php4
-rw-r--r--ldap-site-mngmt/webinterface/dhcp/dhcppool_new.dwt49
-rw-r--r--ldap-site-mngmt/webinterface/dhcp/dhcppool_new.php201
-rw-r--r--ldap-site-mngmt/webinterface/dhcp/dhcppools_change.php36
-rw-r--r--ldap-site-mngmt/webinterface/dhcp/dhcpsubnets.dwt15
-rw-r--r--ldap-site-mngmt/webinterface/dhcp/dhcpsubnets.php2
-rw-r--r--ldap-site-mngmt/webinterface/dhcp/menu.dwt11
11 files changed, 410 insertions, 77 deletions
diff --git a/ldap-site-mngmt/webinterface/dhcp/dhcp.dwt b/ldap-site-mngmt/webinterface/dhcp/dhcp.dwt
index 0a79961c..9946aae9 100644
--- a/ldap-site-mngmt/webinterface/dhcp/dhcp.dwt
+++ b/ldap-site-mngmt/webinterface/dhcp/dhcp.dwt
@@ -5,18 +5,18 @@
<link rel='stylesheet' href='../styles.css' type='text/css'></head>
<body>
-<table cellpadding='0' cellspacing='0' border='0' width='95%' height='8%'>
+<table cellpadding='0' cellspacing='0' border='0' width='100%' style='background-color: #F0F0F0;border-color: #505050; border-style: solid; border-width: 0 0 1 0;'>
<tr>
- <td width='35%'>
+ <td width='30%'>
<table cellpadding='5' cellspacing='0' border='0' width='100%'>
<tr valign='top'>
<td width='1'></td>
- <td><h2>Rechner und IP Management</h2></td>
+ <td><h2>Client / IP Management</h2></td>
</tr>
</table>
</td>
- <td width='40%'>
+ <td width='45%'>
<table cellpadding='5' cellspacing='0' border='0' width='100%'>
<tr valign='top' align='left'>
<td>
@@ -36,14 +36,12 @@
</table>
</td>
</tr>
-</table>
-<table cellpadding='5' cellspacing='0' border='0' width='95%' height='7%'>
-<tr>
- <td>{MAINMENU}</td>
-</tr>
+ <tr>
+ <td colspan='3'>{MAINMENU}</td>
+ </tr>
</table>
-<hr align='center' width='98%' noshade>
+<br>
diff --git a/ldap-site-mngmt/webinterface/dhcp/dhcp_menu.php b/ldap-site-mngmt/webinterface/dhcp/dhcp_menu.php
index a51ee6d5..01ec5b92 100644
--- a/ldap-site-mngmt/webinterface/dhcp/dhcp_menu.php
+++ b/ldap-site-mngmt/webinterface/dhcp/dhcp_menu.php
@@ -1,29 +1,27 @@
<?php
-function createDhcpMenu($rollen , $mnr, $auDN, $sbmnr) {
-
- global $template, $START_PATH, $rootAU;
-
- $mipbs = get_maxipblocks_au($auDN);
- #echo "MIPB: "; print_r ($mipbs); echo "<br>";
- if ($mipbs[0] != ""){
- $hauptmenu = array(array("link" => "dhcp.php",
- "text" => "&Uuml;bersicht",
- "zugriff" => "alle"));
- }else{
- $hauptmenu = array(array("link" => "no_dhcp.php",
+function createDhcpMenu($rollen, $mnr, $auDN, $sbmnr) {
+
+ global $template, $START_PATH, $rootAU;
+
+ $mipbs = get_maxipblocks_au($auDN);
+ #echo "MIPB: "; print_r ($mipbs); echo "<br>";
+ if ($mipbs[0] != ""){
+ $hauptmenu = array();
+ }else{
+ $hauptmenu = array(array("link" => "no_dhcp.php",
"text" => "&Uuml;bersicht",
"zugriff" => "alle"));
- }
-
+ }
+
$pools = get_dhcppools($auDN, array("dn"));
if (count($pools) == 0){
$poollink = "dhcpnopool.php";
}else{
$poollink = "dhcppool.php";
}
-
- $i=1;
+
+ $i=0;
if ( $auDN == $rootAU ) {
$dhcpservice_array = get_dhcpservices($auDN,array("dn","cn"));
if (count($dhcpservice_array) == 0){
@@ -33,8 +31,8 @@ function createDhcpMenu($rollen , $mnr, $auDN, $sbmnr) {
$dhcpsvlink = "dhcpservice.php?mnr=1";
}
$hauptmenu []= array("link" => $dhcpsvlink,
- "text" => "DHCP Service",
- "zugriff" => array("MainAdmin","DhcpAdmin"));
+ "text" => "DHCP Service",
+ "zugriff" => array("MainAdmin","DhcpAdmin"));
$i++;
}
if ($mipbs[0] != ""){
@@ -42,9 +40,9 @@ function createDhcpMenu($rollen , $mnr, $auDN, $sbmnr) {
$hauptmenu [] = array("link" => "dhcpsubnets.php?mnr=".$i,
"text" => "DHCP Subnets",
"zugriff" => array("MainAdmin","DhcpAdmin"));
-
- $subnets = array();
- # falls komplette Netze verfügbar, link zum Neuanlegen
+
+ $subnets = array();
+ # falls komplette Netze verfügbar, link zum Neuanlegen
if ( check_if_free_networks() ){
#$dhcpsubnet_array = get_dhcpsubnets($auDN,array("dn","cn"));
/*for ($j=0;$j<count($dhcpsubnet_array);$j++){
@@ -60,33 +58,28 @@ function createDhcpMenu($rollen , $mnr, $auDN, $sbmnr) {
$hauptmenu [] = array("link" => $poollink."?mnr=".$i,
"text" => "Dynamische DHCP Pools",
"zugriff" => array("MainAdmin","DhcpAdmin"));
-
- $submenu = array(array(),
+
+ $submenu = array(#array(),
$subnets,
- array());
-
+ array());
}else{
$hauptmenu [] = array("link" => $poollink."?mnr=".$i,
"text" => "Dynamische DHCP Pools",
"zugriff" => array("MainAdmin","DhcpAdmin"));
}
}
-
- #print_r ($hauptmenu);cho "<br>";
- #print_r ($submenu);
- #$rollen = array_keys($roles);
# Zusammenstellen der Menuleiste
$template->define_dynamic("Hauptmenu", "Menu");
$template->define_dynamic("Submenu", "Menu");
$i=0;
$maxmenu = count($hauptmenu);
-
- foreach($hauptmenu as $item) {
- $template->clear_parse("SUBMENU_LIST");
- if($item['zugriff'] === "alle" || vergleicheArrays($rollen , $item['zugriff'])) {
-
- $subempty = 0;
+
+ foreach($hauptmenu as $item) {
+ $template->clear_parse("SUBMENU_LIST");
+ if($item['zugriff'] === "alle" || vergleicheArrays($rollen , $item['zugriff'])) {
+
+ $subempty = 0;
$j=0;
$maxsub = count($submenu[$mnr]);
if($maxsub > 0){
@@ -137,9 +130,9 @@ function createDhcpMenu($rollen , $mnr, $auDN, $sbmnr) {
</tr>
<tr>
<td width='8%'>&nbsp;</td>
- <td width='8%' align='right'>".$zwisch."</td>
+ <td width='8%' align='right'>".$zwisch."</td>
<td width='74%' align='left' style='border-width:1 1 1 1;border-color:#000000;border-style:solid;padding:2;padding-left:15px;background-color:{FARBE_S}'>
- <a href='".$item2['link']."' style='text-decoration:none'><b class='standard_schrift'>".$item2['text']."</b></a></td>
+ <a href='".$item2['link']."' style='text-decoration:none'><code class='submenue_schrift'>".$item2['text']."</code></a></td>
<td width='10%'>&nbsp;</td>
</tr>
";
diff --git a/ldap-site-mngmt/webinterface/dhcp/dhcppool.dwt b/ldap-site-mngmt/webinterface/dhcp/dhcppool.dwt
index f8dbe02d..a4a1f79b 100644
--- a/ldap-site-mngmt/webinterface/dhcp/dhcppool.dwt
+++ b/ldap-site-mngmt/webinterface/dhcp/dhcppool.dwt
@@ -1,9 +1,16 @@
<table border='0' cellpadding='5' cellspacing='0' width='100%'>
<tr>
- <td colspan='2'><h3>Dynamische DHCP Pools </h3></td>
+ <td width='80%'>
+ <h3>Dynamische DHCP Pools </h3>
+ Administration Ihrer eingetragenen <b>dynamischen DHCP Pools</b>:<br>
+ Bearbeiten von bzw. Anlegen neuer IP Ranges zur dynamischen Vergabe. Zulassen von unbekannten bzw. einschr&auml;nken auf bekannte Clients (d.h. im DHCP angelegte Clients).<br>
+ Sie k&ouml;nnen IP Ranges nur entsprechend der Ihnen noch frei verf&uuml;baren IP Adressen definieren.<br><br>
+ &Uuml;ber die <b>Eingabemaske</b> unten k&ouml;nnen Sie weitere Pools anlegen
+ </td>
+ <td>&nbsp;</td>
</tr>
- <tr><td>
+ <tr><td colspan='2'>
<table cellpadding='7' cellspacing='0' border='1' align='left' width='90%' style='border-width: 0 0 0 0;'>
<form action='dhcppools_change.php' method='post'>
@@ -17,11 +24,11 @@
<!-- BEGIN DYNAMIC BLOCK: Dhcppools -->
<tr height='50' valign='top'>
- <td class='tab_d'><b>{SUBNET}/24</b><br><br>
+ <td class='tab_d_ohne'><b>{SUBNET}/24</b><br><br>
<input type='checkbox' name='delpool[]' value='{POOLDN}' size='10' class='medium_form_field'>
- Pool l&ouml;schen (H&auml;kchen setzen)</td>
+ Pool l&ouml;schen</td>
- <td class='tab_d'>
+ <td class='tab_d_ohne'>
<!-- BEGIN DYNAMIC BLOCK: Dhcpranges -->
@@ -39,18 +46,23 @@
<input type='Text' name='addrange2[]' value='' size='15' maxlength='15' class='medium_form_field'>
</td>
- <td class='tab_d'>
- <select name='unknownclients[]' size='3' class='small_form_selectbox'>
+ <td class='tab_d_ohne'>
+ <select name='unknownclients[]' size='3' class='100_form_selectbox'>
{UCSELECT}
</select>
<input type='hidden' name='olduc[]' value='{UCNOW}'> &nbsp;
</td>
</tr>
+ <tr height='50' valign='top'>
+ <td class='tab_d'><b>Remote Boot Service:</b><br>{RBS}</td>
+ <td class='tab_d' colspan='2'>{RBSSELECT}</td>
+ </tr>
<input type='hidden' name='pooldn[]' value='{POOLDN}'>
+ <input type='hidden' name='oldrbs[]' value='{OLDRBS}'>
<input type='hidden' name='subnet[]' value='{SUBNET}'>
<input type='hidden' name='subnetau[]' value='{SUBNETAU}'>
-
+
<!-- END DYNAMIC BLOCK: Dhcppools -->
<input type='hidden' name='mnr' value='{MNR}'>
@@ -58,26 +70,27 @@
</table></td>
</tr>
<tr>
- <td><input type='Submit' name='apply' value='anwenden' class='small_loginform_button'>
+ <td colspan='2'><input type='Submit' name='apply' value='anwenden' class='small_loginform_button'>
</form></td>
</tr>
<tr>
- <td height='50'></td>
+ <td height='50' colspan='2'></td>
</tr>
<tr>
<td colspan='2'><h4>Dynamischen DHCP Pool hinzuf&uuml;gen </h4></td>
</tr>
<tr>
- <td>
+ <td colspan='2'>
<table cellpadding='7' cellspacing='0' border='0' align='left' width='90%' style='border-width: 0 0 0 0;'>
<form action='dhcppool_add.php' method='post'>
<tr valign='bottom'>
<td width='50%' class='tab_h'><b>IP Range (innerhalb eines Subnetzes)</b><br>
weitere Ranges k&ouml;nnen sp&auml;ter hinzugef&uuml;gt werden</td>
- <td width='50%' class='tab_h'><b>Unknown Clients</b></td>
+ <td width='20%' class='tab_h'><b>Unknown Clients</b></td>
+ <td width='30%' class='tab_h'><b>Remote Boot Service</b></td>
</tr>
<tr height='50' valign='top'>
@@ -87,12 +100,14 @@
<input type='Text' name='addrange2' value='' size='15' maxlength='15' class='medium_form_field'>
</td>
<td class='tab_d'>
- <select name='unknownclients' size='3' class='small_form_selectbox'>
+ <select name='unknownclients' size='3' class='100_form_selectbox'>
<option selected value='deny'> DENY </option>
<option value='allow'> ALLOW </option>
<option value='ignore'> IGNORE </option>
</select>
</td>
+ <td class='tab_d'>{RBSADD}
+ </td>
</tr>
<input type='hidden' name='mnr' value='{MNR}'>
diff --git a/ldap-site-mngmt/webinterface/dhcp/dhcppool.php b/ldap-site-mngmt/webinterface/dhcp/dhcppool.php
index d35edd18..aa58201f 100644
--- a/ldap-site-mngmt/webinterface/dhcp/dhcppool.php
+++ b/ldap-site-mngmt/webinterface/dhcp/dhcppool.php
@@ -24,9 +24,9 @@ createDhcpMenu($rollen, $mnr, $auDN, $sbmnr);
# DHCP Pools Daten holen
$attributes = array("dn","cn","dhcphlpcont","dhcprange","description","dhcpstatements","dhcpoptallow",
"dhcpoptdefault-lease-time","dhcpoptdeny","dhcpoptignore","dhcpoptmax-lease-time",
- "dhcpoptgeneric");
+ "dhcpoptgeneric","hlprbservice","dhcpoptfilename","dhcpoptnext-server");
$pools = get_dhcppools($auDN, $attributes);
-#print_r($pools);
+
if (count($pools) == 0){
redirect(0, "dhcpnopool.php?mnr=".$mnr, "", $addSessionId = TRUE);
die;
@@ -43,6 +43,8 @@ $template->assign(array("POOLDN" => "",
"ALLOW" => "",
"DENY" => "",
"IGNORE" => "",
+ "RBS" => "",
+ "RBSSELECT" => "",
"DEFAULTLEASE" => "",
"MAXLEASE" => "",
"MNR" => $mnr));
@@ -59,7 +61,8 @@ foreach ($pools as $pool){
$subnetdnexp = ldap_explode_dn( $pool['dhcphlpcont'], 0);
$subnetauexp = array_slice($subnetdnexp, 3);
$subnetau = implode(',',$subnetauexp);
-
+ $rbsDN = $pool['hlprbservice'];
+
$template->clear_parse("DHCPRANGES_LIST");
@@ -105,8 +108,34 @@ foreach ($pools as $pool){
$ucselectbox = "<option selected value='deny'> DENY </option>
<option value='allow'> ALLOW </option>
<option value='ignore'> IGNORE </option>";
- }
-
+ }
+
+ # RBS Setup
+ $rbs_selectbox = "";
+ $rbs_addselectbox = "";
+ $altrbs = alternative_rbservices($rbsDN);
+
+ $rbs_selectbox .= "<select name='rbs[]' size='4' class='tftp_form_selectbox'>
+ <option selected value='none'>----------</option>";
+ $rbs_addselectbox = "<select name='rbs' size='3' class='tftp_form_selectbox'>
+ <option selected value='none'>----------</option>";
+ if (count($altrbs) != 0){
+ foreach ($altrbs as $item){
+ $rbs_selectbox .= "<option value='".$item['dn']."'>".$item['cn']." ".$item['au']."</option>";
+ $rbs_addselectbox .= "<option value='".$item['dn']."'>".$item['cn']." ".$item['au']."</option>";
+ }
+ }
+ $rbs_selectbox .= "<option value=''>Kein RBS</option></select>";
+ $rbs_addselectbox .= "</select>";
+
+ if ($rbsDN == ""){
+ $rbs = "Keine Einbindung";
+ }else{
+ $rbsdnexp = ldap_explode_dn($pool['hlprbservice'],1);
+ $rbs = $rbsdnexp[0]."<br>DHCP Next-Server: ".$pool['dhcpoptnext-server']."<br>DHCP Filename: ".$pool['dhcpoptfilename'];
+ }
+
+
$template->assign(array("POOLDN" => $pool['dn'],
"CN" => $pool['cn'],
"SUBNETDN" => $pool['dhcphlpcont'],
@@ -119,6 +148,10 @@ foreach ($pools as $pool){
"ALLOW" => $pool['dhcpoptallow'],
"DENY" => $pool['dhcpoptdeny'],
"IGNORE" => $pool['dhcpoptignore'],
+ "RBS" => $rbs,
+ "RBSSELECT" => $rbs_selectbox,
+ "RBSADD" => $rbs_addselectbox,
+ "OLDRBS" => $rbsDN,
"DEFAULTLEASE" => $pool['dhcpoptdefault-lease-time'],
"MAXLEASE" => $pool['dhcpoptmax-lease-time'],
"MNR" => $mnr));
diff --git a/ldap-site-mngmt/webinterface/dhcp/dhcppool_add.php b/ldap-site-mngmt/webinterface/dhcp/dhcppool_add.php
index 416654e2..bddb8282 100644
--- a/ldap-site-mngmt/webinterface/dhcp/dhcppool_add.php
+++ b/ldap-site-mngmt/webinterface/dhcp/dhcppool_add.php
@@ -6,6 +6,8 @@ $syntax = new Syntaxcheck;
$range1 = $_POST['addrange1'];
$range2 = $_POST['addrange2'];
$unknownclients = $_POST['unknownclients'];
+$rbs = $_POST['rbs'];
+
$mnr = $_POST['mnr'];
$seconds = 2;
@@ -65,7 +67,7 @@ if ($syntax->check_ip_syntax($range1) && $syntax->check_ip_syntax($range2)){
$results = ldap_mod_replace($ds,$auDN,$entry);
if ($results){
echo "<br>Neue FIPBs erfolgreich eingetragen!<br>";
- $result = add_dhcppool($subnetdn,$range,$unknownclients,$result[0]['dhcphlpcont']);
+ $result = add_dhcppool($subnetdn,$range,$unknownclients,$result[0]['dhcphlpcont'],$rbs);
if ($result){
echo "<br>Dynamischer DHCP Pool erfolgreich eingetragen!<br>" ;
update_dhcpmtime(array($subnetau));
diff --git a/ldap-site-mngmt/webinterface/dhcp/dhcppool_new.dwt b/ldap-site-mngmt/webinterface/dhcp/dhcppool_new.dwt
new file mode 100644
index 00000000..8c9aefdc
--- /dev/null
+++ b/ldap-site-mngmt/webinterface/dhcp/dhcppool_new.dwt
@@ -0,0 +1,49 @@
+<table border='0' cellpadding='5' cellspacing='0' width='100%'>
+ <tr>
+ <td colspan='2'><h3>Dynamische DHCP Pools </h3></td>
+ </tr>
+
+ <!-- BEGIN DYNAMIC BLOCK: Poolform -->
+ {POOLFORMULAR}
+ <!-- END DYNAMIC BLOCK: Poolform -->
+
+ <tr>
+ <td colspan='2'><h4>Dynamischen DHCP Pool hinzuf&uuml;gen </h4></td>
+ </tr>
+ <tr>
+ <td>
+ <table cellpadding='7' cellspacing='0' border='0' align='left' width='90%' style='border-width: 0 0 0 0;'>
+ <form action='dhcppool_add.php' method='post'>
+
+ <tr valign='bottom'>
+ <td width='50%' class='tab_h'><b>IP Range (innerhalb eines Subnetzes)</b><br>
+ weitere Ranges k&ouml;nnen sp&auml;ter hinzugef&uuml;gt werden</td>
+ <td width='50%' class='tab_h'><b>Unknown Clients</b></td>
+ </tr>
+
+ <tr height='50' valign='top'>
+ <td class='tab_d'>
+ <input type='Text' name='addrange1' value='' size='15' maxlength='15' class='medium_form_field'>
+ &nbsp;&nbsp; - &nbsp;&nbsp;
+ <input type='Text' name='addrange2' value='' size='15' maxlength='15' class='medium_form_field'>
+ </td>
+ <td class='tab_d'>
+ <select name='unknownclients' size='3' class='small_form_selectbox'>
+ <option selected value='deny'> DENY </option>
+ <option value='allow'> ALLOW </option>
+ <option value='ignore'> IGNORE </option>
+ </select>
+ </td>
+ </tr>
+ <input type='hidden' name='mnr' value='{MNR}'>
+
+ </table></td>
+ </tr>
+ <tr>
+ <td>
+ <input type='Submit' name='apply' value='anlegen' class='small_loginform_button'>
+ </form></td>
+ </tr>
+
+
+</table> \ No newline at end of file
diff --git a/ldap-site-mngmt/webinterface/dhcp/dhcppool_new.php b/ldap-site-mngmt/webinterface/dhcp/dhcppool_new.php
new file mode 100644
index 00000000..74592459
--- /dev/null
+++ b/ldap-site-mngmt/webinterface/dhcp/dhcppool_new.php
@@ -0,0 +1,201 @@
+<?php
+
+include('../standard_header.inc.php');
+
+# Dateiname und evtl. Pfad des Templates für die Webseite
+$webseite = "dhcppool.dwt";
+
+include('dhcp_header.inc.php');
+
+$mnr = 3;
+$sbmnr = -1;
+
+###################################################################################
+
+$mnr = $_GET['mnr'];
+$sbmnr = $_GET['sbmnr'];
+
+# Menuleisten erstellen
+createMainMenu($rollen, $mainnr);
+createDhcpMenu($rollen, $mnr, $auDN, $sbmnr);
+
+###################################################################################
+
+$template->define_dynamic("Poolform", "Webseite");
+$template->assign(array("POOLFORMULAR" => "",
+ #"POOLDN" => "",
+ "CN" => "",
+ "SUBNETDN" => "",
+ #"SUBNET" => "",
+ #"RANGE1" => "",
+ #"RANGE2" => "",
+ "DESCRIPTION" => "",
+ "STATEMENTS" => "",
+ "DEFAULTLEASE" => "",
+ "MAXLEASE" => "",
+ "MNR" => $mnr));
+
+# DHCP Pools Daten holen
+$attributes = array("dn","cn","dhcphlpcont","dhcprange","description","dhcpstatements","dhcpoptallow",
+ "dhcpoptdefault-lease-time","dhcpoptdeny","dhcpoptignore","dhcpoptmax-lease-time",
+ "dhcpoptgeneric");
+$pools = get_dhcppools($auDN, $attributes);
+#print_r($pools);
+
+if (count($pools) != 0){
+
+
+
+$poolform = "
+ <tr><td>
+ <table cellpadding='7' cellspacing='0' border='1' align='left' width='90%' style='border-width: 0 0 0 0;'>
+
+ <form action='dhcppools_change.php' method='post'>
+
+ <tr>
+ <td width='30%' class='tab_h'><b>Subnetz</b></td>
+ <td width='50%' class='tab_h'><b>IP Ranges (innerhalb Subnetz)</b></td>
+ <td width='20%' class='tab_h'><b>Unknown Clients</b></td>
+ </tr>
+
+ <!-- BEGIN DYNAMIC BLOCK: Dhcppools -->
+
+ <tr height='50' valign='top'>
+ <td class='tab_d'><b>{SUBNET}/24</b><br><br>
+ <input type='checkbox' name='delpool[]' value='{POOLDN}' size='10' class='medium_form_field'>
+ Pool l&ouml;schen (H&auml;kchen setzen)</td>
+
+ <td class='tab_d'>
+
+ <!-- BEGIN DYNAMIC BLOCK: Dhcpranges -->
+
+ <input type='Text' name='range1[]' value='{RANGE1}' size='15' maxlength='15' class='medium_form_field'>
+ &nbsp;&nbsp; - &nbsp;&nbsp;
+ <input type='Text' name='range2[]' value='{RANGE2}' size='15' maxlength='15' class='medium_form_field'>
+ <input type='hidden' name='oldrange1[]' value='{RANGE1}'>
+ <input type='hidden' name='oldrange2[]' value='{RANGE2}'><br>
+ <input type='hidden' name='rangepooldn[]' value='{RPOOLDN}'>
+
+ <!-- END DYNAMIC BLOCK: Dhcpranges -->
+
+ <input type='Text' name='addrange1[]' value='' size='15' maxlength='15' class='medium_form_field'>
+ &nbsp;&nbsp; - &nbsp;&nbsp;
+ <input type='Text' name='addrange2[]' value='' size='15' maxlength='15' class='medium_form_field'>
+ </td>
+
+ <td class='tab_d'>
+ <select name='unknownclients[]' size='3' class='small_form_selectbox'>
+ {UCSELECT}
+ </select>
+ <input type='hidden' name='olduc[]' value='{UCNOW}'> &nbsp;
+ </td>
+ </tr>
+ <!--<tr>
+ <td colspan='3' class='tab_d'><input type='checkbox' name='delpool[]' value='{POOLDN}' size='10' class='medium_form_field'>
+ Pool l&ouml;schen (H&auml;kchen setzen)</td>
+ </tr>-->
+
+ <input type='hidden' name='pooldn[]' value='{POOLDN}'>
+ <input type='hidden' name='subnet[]' value='{SUBNET}'>
+ <input type='hidden' name='subnetau[]' value='{SUBNETAU}'>
+
+ <!-- END DYNAMIC BLOCK: Dhcppools -->
+
+ <input type='hidden' name='mnr' value='{MNR}'>
+
+ </table></td>
+ </tr>
+ <tr>
+ <td><input type='Submit' name='apply' value='anwenden' class='small_loginform_button'>
+ </form></td>
+ </tr>
+
+ <tr>
+ <td height='50'></td>
+ </tr>";
+
+$template->assign(array("POOLFORMULAR" => $poolform));
+$template->parse("POOLFORM_LIST", "Poolform");
+#$template->clear_dynamic("Poolform");
+#$template->clear_parse("POOLFORM_LIST");
+
+$template->define_dynamic("Dhcppools", "Webseite");
+$template->define_dynamic("Dhcpranges", "Webseite");
+# Für jeden Pool ...
+foreach ($pools as $pool){
+
+ # DHCP Subnet des Pools
+ $subnet = ldap_explode_dn($pool['dhcphlpcont'],1);
+ $subnetdnexp = ldap_explode_dn( $pool['dhcphlpcont'], 0);
+ $subnetauexp = array_slice($subnetdnexp, 3);
+ $subnetau = implode(',',$subnetauexp);
+
+
+ $template->clear_parse("DHCPRANGES_LIST");
+
+ # DHCP Ranges
+ if (count($pool['dhcprange']) != 0){
+ #$template->define_dynamic("Dhcpranges", "Webseite");
+ if (count($pool['dhcprange']) > 1){
+ foreach ($pool['dhcprange'] as $dhcprange){
+ $iprange = explode('_',$dhcprange);
+ $template->assign(array(
+ "RANGE1" => $iprange[0],
+ "RANGE2" => $iprange[1],
+ "RPOOLDN" => $pool['dn']));
+ $template->parse("DHCPRANGES_LIST", ".Dhcpranges");
+ $template->clear_dynamic("Dhcpranges");
+ }
+ }else{
+ $iprange = explode('_',$pool['dhcprange']);
+ $template->assign(array(
+ "RANGE1" => $iprange[0],
+ "RANGE2" => $iprange[1],
+ "RPOOLDN" => $pool['dn']));
+ $template->parse("DHCPRANGES_LIST", ".Dhcpranges");
+ $template->clear_dynamic("Dhcpranges");
+ }
+ }
+
+ # Unknown-Clients
+ if ($pool['dhcpoptallow'] == "unknown-clients"){
+ $unknownclients = "allow";
+ $ucselectbox = "<option selected value='allow'> ALLOW </option>
+ <option value='deny'> DENY </option>
+ <option value='ignore'> IGNORE </option>";
+ }
+ elseif ($pool['dhcpoptignore'] == "unknown-clients") {
+ $unknownclients = "ignore";
+ $ucselectbox = "<option selected value='ignore'> IGNORE </option>
+ <option value='allow'> ALLOW </option>
+ <option value='deny'> DENY </option>";
+ }
+ else{
+ $unknownclients = "deny";
+ $ucselectbox = "<option selected value='deny'> DENY </option>
+ <option value='allow'> ALLOW </option>
+ <option value='ignore'> IGNORE </option>";
+ }
+
+ $template->assign(array("POOLDN" => $pool['dn'],
+ "CN" => $pool['cn'],
+ "SUBNETDN" => $pool['dhcphlpcont'],
+ "SUBNET" => $subnet[0],
+ "SUBNETAU" => $subnetau,
+ "DESCRIPTION" => $pool['description'],
+ "STATEMENTS" => $pool['dhcpstatements'],
+ "UCSELECT" => $ucselectbox,
+ "UCNOW" => $unknownclients,
+ "DEFAULTLEASE" => $pool['dhcpoptdefault-lease-time'],
+ "MAXLEASE" => $pool['dhcpoptmax-lease-time'],
+ "MNR" => $mnr));
+ $template->parse("DHCPPOOLS_LIST", ".Dhcppools");
+
+}
+}
+
+###################################################################################
+
+include("dhcp_footer.inc.php");
+
+?> \ No newline at end of file
diff --git a/ldap-site-mngmt/webinterface/dhcp/dhcppools_change.php b/ldap-site-mngmt/webinterface/dhcp/dhcppools_change.php
index 375cc01a..1a62cfed 100644
--- a/ldap-site-mngmt/webinterface/dhcp/dhcppools_change.php
+++ b/ldap-site-mngmt/webinterface/dhcp/dhcppools_change.php
@@ -20,6 +20,8 @@ $addrange1 = $_POST['addrange1'];
$addrange2 = $_POST['addrange2'];
$uc = $_POST['unknownclients'];
$olduc = $_POST['olduc'];
+$rbs = $_POST['rbs'];
+$oldrbs = $_POST['oldrbs'];
# Array to fill with AUs to update dhcpMTime
$au_to_update = array();
@@ -40,7 +42,7 @@ $mnr = $_POST['mnr'];
#print_r($olduc); echo "<br><br>";
#print_r($uc); echo "<br><br>";
-$seconds = 200;
+$seconds = 2;
$url = "dhcppool.php?mnr=".$mnr;
echo "
@@ -85,6 +87,8 @@ for ($i=0;$i<count($delpool);$i++){
array_splice ( &$addrange2, $nr, 1 );
array_splice ( &$uc, $nr, 1 );
array_splice ( &$olduc, $nr, 1 );
+ array_splice ( &$rbs, $nr, 1 );
+ array_splice ( &$oldrbs, $nr, 1 );
}
# da sich Arrays verkleinern, Wert in $key_r entsprechend verkleinern,
$j=0; # Variable $j als Zähler um wieviel
@@ -111,6 +115,7 @@ for ($i=0;$i<count($pooldn);$i++){
$entrydel = array();
$entryadd = array();
+ $entryrbs = array();
# DENY, ALLOW, IGNORE Unknown-clients verarbeiten
if ( $uc[$i] != $olduc[$i] ){
$dhcpoptdel = "dhcpopt".$olduc[$i];
@@ -125,6 +130,33 @@ for ($i=0;$i<count($pooldn);$i++){
# Subnet-AU auf DHCP-Modify setzen
$au_to_update [] = $subnetau[$i];
}
+ # RBS
+ if ( $rbs[$i] != "none" && $rbs[$i] != $oldrbs[$i] ){
+ $dhcpdata = get_node_data($rbs[$i],array("tftpserverip","initbootfile"));
+ $entryrbs ['hlprbservice'] = $rbs[$i];
+ $entryrbs ['dhcpoptnext-server'] = $dhcpdata['tftpserverip'];
+ $entryrbs ['dhcpoptfilename'] = $dhcpdata['initbootfile'];
+ if ( $oldrbs[$i] == "" ){
+ echo "RBS add "; print_r($entryrbs); echo "<br>";
+ if ($result = ldap_mod_add($ds,$pooldn[$i],$entryrbs)){
+ echo "DHCP Pool erfolgreich in RBS eingebunden.<br>";
+ }
+ }elseif ( $rbs[$i] == "" ){
+ $entryrbs ['hlprbservice'] = array();
+ $entryrbs ['dhcpoptnext-server'] = array();
+ $entryrbs ['dhcpoptfilename'] = array();
+ echo "RBS delete "; echo "<br>";
+ if ($result = ldap_mod_del($ds,$pooldn[$i],$entryrbs)){
+ echo "DHCP Pool erfolgreich aus RBS gel&ouml;scht.<br>";
+ }
+ }else{
+ echo "RBS replace "; print_r($oldrbs[$i]); echo " with "; print_r($entryrbs); echo "<br>";
+ if ($result = ldap_mod_replace($ds,$pooldn[$i],$entryrbs)){
+ echo "DHCP Pool RBS Einbindung erfolgreich ge&auml;ndert.<br>";
+ }
+ }
+ }
+
# Ranges hinzufügen
if ( $addrange1[$i] != "" && $addrange2[$i] != "" ){
if ($syntax->check_ip_syntax($addrange1[$i]) && $syntax->check_ip_syntax($addrange2[$i])){
@@ -132,7 +164,7 @@ for ($i=0;$i<count($pooldn);$i++){
$add1 = strrev(strchr(strrev($addrange1[$i]), "."));
$add2 = strrev(strchr(strrev($addrange2[$i]), "."));
if ( $net == $add1 && $net == $add2 ){
-
+
printf("Range in Pool %s hinzuf&uuml;gen<br>",$pooldn[$i]);
# Range zusammenstellen
$newrange = implode("_", array($addrange1[$i],$addrange2[$i]));
diff --git a/ldap-site-mngmt/webinterface/dhcp/dhcpsubnets.dwt b/ldap-site-mngmt/webinterface/dhcp/dhcpsubnets.dwt
index 76c2913f..514f5b72 100644
--- a/ldap-site-mngmt/webinterface/dhcp/dhcpsubnets.dwt
+++ b/ldap-site-mngmt/webinterface/dhcp/dhcpsubnets.dwt
@@ -1,16 +1,23 @@
<table border='0' cellpadding='5' cellspacing='0' width='100%'>
<tr>
- <td colspan='2'><h3>DHCP Subnets</h3>
+ <td width='80%'>
+ <h3>DHCP Subnets</h3>
+ &Uuml;bersicht der in <b>{AU}</b> angelegten <b>DHCP Subnets</b>:<br>
+ Subnetz (-maske), Status der Einbindung in den zentralen DHCP Dienst, sowie Informationen zu angelegten dynamischen DHCP Pools des Subnetzes.<br><br>
+ Zur <b>Verwaltungsmaske</b> eines bestimmten Subnetzes gelangen Sie durch klicken auf entsprechendes Subnetz.<br><br>
+ DHCP Subnets k&ouml;nnen nur f&uuml;r Ihnen <b>komplett zugewiesene Subnetze</b> angelegt werden.<br>
+ &Uuml;ber die <b>Eingabemaske</b> k&ouml;nnen Sie noch nicht als DHCP Subnets anlegte komplette Subnetze eintragen (Men&uuml;punkt links "Neues DHCP Subnet anlegen").
</td>
+ <td>&nbsp;</td>
</tr>
- <tr><td>
+ <tr><td colspan='2'>
<table cellpadding='7' cellspacing='0' border='1' align='left' width='90%' style='border-width: 0 0 0 0;'>
<tr>
<td width='15%' style='border-color: black; border-style: solid; border-width: 0 0 3 0;'><b>Subnet</b></td>
<td width='15%' style='border-color: black; border-style: solid; border-width: 0 0 3 0;'><b>Netmask</b></td>
- <td width='25%' style='border-color: black; border-style: solid; border-width: 0 0 3 0;'><b>DHCP Service</b></td>
- <td width='45%' style='border-color: black; border-style: solid; border-width: 0 0 3 0;'><b>Dynamic Pools (IP Ranges)</b></td>
+ <td width='20%' style='border-color: black; border-style: solid; border-width: 0 0 3 0;'><b>DHCP Service</b></td>
+ <td width='50%' style='border-color: black; border-style: solid; border-width: 0 0 3 0;'><b>Dynamic Pools (IP Ranges)</b></td>
</tr>
<!-- BEGIN DYNAMIC BLOCK: Subnets -->
diff --git a/ldap-site-mngmt/webinterface/dhcp/dhcpsubnets.php b/ldap-site-mngmt/webinterface/dhcp/dhcpsubnets.php
index 1bf6b2e1..88e10576 100644
--- a/ldap-site-mngmt/webinterface/dhcp/dhcpsubnets.php
+++ b/ldap-site-mngmt/webinterface/dhcp/dhcpsubnets.php
@@ -69,7 +69,7 @@ foreach ($subnet_array as $subnet){
$dhcpservice = "";
if ($subnet['dhcphlpcont'] != ""){
$exp = ldap_explode_dn($subnet['dhcphlpcont'],1);
- $dhcpservice = $exp[0]." &nbsp;[".$exp[2]."]";
+ $dhcpservice = $exp[0]."<br>[".$exp[2]."]";
}
$subnetcn = "<a href='dhcpsubnet.php?dn=".$subnet['dn']."&mnr=".$mnr."' class='headerlink'><b>".$subnet['cn']."</b></a>";
diff --git a/ldap-site-mngmt/webinterface/dhcp/menu.dwt b/ldap-site-mngmt/webinterface/dhcp/menu.dwt
index 037bdf15..24e68a3c 100644
--- a/ldap-site-mngmt/webinterface/dhcp/menu.dwt
+++ b/ldap-site-mngmt/webinterface/dhcp/menu.dwt
@@ -6,11 +6,14 @@
<!-- BEGIN DYNAMIC BLOCK: Hauptmenu -->
<tr valign='middle' align='left'>
-
+
<td width='8%' align='right' style="border-style=none;">{ICON}</td>
- <td width="8%" align="left" style="border-width:1 0 1 1;border-color:#000000;border-style:solid;padding:5;background-color:{FARBE}">&nbsp;</td>
+ <td width="8%" align="left" style="border-width:1 0 1 1;border-color:#000000;border-style:solid;padding:5;background-color:{FARBE}">&nbsp;</td>
<td width="74%" align="left" style="border-width:1 1 1 0;border-color:#000000;border-style:solid;padding:5;background-color:{FARBE}">
- <a href="{LINK_M}" style="text-decoration:none"><b class="standard_schrift">{TEXT_M}</b></a></td>
+ <a href="{LINK_M}" style="text-decoration:none">
+ <code class="submenue_schrift">{TEXT_M}</code>
+ </a>
+ </td>
<td width='10%'>&nbsp;</td>
</tr>
@@ -22,7 +25,7 @@
<!-- END DYNAMIC BLOCK: Submenu -->
<tr height='5'></tr>
- <!-- END DYNAMIC BLOCK: Hauptmenu -->
+ <!-- END DYNAMIC BLOCK: Hauptmenu -->