servnest/ns/ip.php

73 lines
2.4 KiB
PHP
Raw Normal View History

2021-01-22 21:58:46 +01:00
<?php require "../top.inc.php"; ?>
2021-02-17 22:48:49 +01:00
<p>
Ici vous pouvez ajouter ou enlever des adresses IP dans une zone déjà enregistrée sur le serveur ns1.atope.art
<br>Le format IPv4 (A) ou IPv6 (AAAA) sera détecté automatiquement.
<br>Si vous souhaitez utiliser un service d'hébergement hypertexte de Niver, voici les adresses à renseigner :
<br>IPv4 : 45.13.104.169
<br>IPv6 : 2a0b:cbc0:1103:2::106f
</p>
<form method="post">
<label for="action">Action</label>
<select name="action" id="action">
<option value="add">Ajouter</option>
<option value="delete">Retirer</option>
</select>
<br>
<label for="zone">Zone</label><br>
<select required="" name="zone" id="zone">
<option value="" disabled="" selected="">---</option>
2021-01-22 21:58:46 +01:00
<?php
$zones = nsListUserZones($_SESSION['username']);
2021-01-22 21:58:46 +01:00
foreach ($zones as $zone) {
echo "<option value='" . $zone . "'>" . $zone . "</option>";
2021-01-22 21:58:46 +01:00
}
?>
2021-02-17 22:48:49 +01:00
</select>
<br>
<label for="domain">Domaine</label><br>
<input required="" id="domain" name="domain" type="text" placeholder="www.domaine."><br>
<label for="ttl"><abbr title="Time To Live">TTL</abbr></label><br>
<input required="" id="ttl" list="ttls" name="ttl" size="10" type="number" min="600" max="604800" value="3600" placeholder="3600"><br>
<datalist id="ttls">
<option value="900">
<option value="3600">
<option value="10800">
<option value="86400">
<option value="604800">
</datalist>
<label for="ip">IP</label><br>
<input required="" pattern="^[a-f0-9:.]+$" id="ip" name="ip" minlength="7" maxlength="39" size="40" type="text" placeholder="2a0b:cbc0:1103:2::106f ou 45.13.104.169"><br>
<input value="Valider" type="submit">
</form>
<?php
if (isset($_POST['domain']) AND isset($_POST['ip']) AND isset($_POST['zone']) AND isset($_POST['action'])) {
checkIpFormat($_POST['ip']);
if (filter_var($_POST['ip'], FILTER_VALIDATE_IP, FILTER_FLAG_IPV4))
$record = "A";
else if (filter_var($_POST['ip'], FILTER_VALIDATE_IP, FILTER_FLAG_IPV6))
$record = "AAAA";
else
exit("Erreur inconnue sur le format de l'IP");
2021-03-02 22:56:38 +01:00
$action = checkAction($_POST['action']);
2021-02-17 22:48:49 +01:00
exec(KNOTC_PATH . " zone-begin " . $_POST['zone']);
exec(KNOTC_PATH . " zone-" . $action . "set " . $_POST['zone'] . " " . $_POST['domain'] . " 3600 " . $record . " " . $_POST['ip']);
exec(KNOTC_PATH . " zone-commit " . $_POST['zone']);
echo "Enregistrement ajouté";
}
?>
2021-01-22 21:58:46 +01:00
<?php require "../bottom.inc.php"; ?>