Label

Kamis, 28 September 2023

Kalkulator IP dengan versi 4

 Aplikasi Kalkulator IP versi 4 sederhana



<!DOCTYPE html>

<html>

<head>

  <title>IP Calculator</title>

  <style>

    body {

      font-family: Arial, sans-serif;

    }

    .calculator {

      width: 300px;

      margin: 0 auto;

      text-align: center;

    }

    input[type="text"], select {

      width: 100%;

      padding: 10px;

      margin-bottom: 10px;

    }

  </style>

</head>

<body>

  <div class="calculator">

    <h1>IP Calculator</h1>

    <input type="text" id="ipAddress" placeholder="Alamat IP (Contoh: 192.168.1.1)">

    <input type="text" id="subnetMask" placeholder="Subnet Mask (Contoh: 255.255.255.0)">

    <button onclick="calculate()">Hitung</button>

    <br>

    <p>Alamat Jaringan: <span id="networkAddress"></span></p>

    <p>Subnet Mask: <span id="subnetMaskResult"></span></p>

    <p>Prefix: <span id="prefix"></span></p>

    <p>Alamat IP (Biner): <span id="binaryIpAddress"></span></p>

    <p>Alamat Jaringan (Biner): <span id="binaryNetworkAddress"></span></p>

    <p>Jumlah Host: <span id="hostCount"></span></p>

    <p>Rentang Alamat IP yang Bisa Digunakan: <span id="ipRange"></span></p>

    <p>Alamat Broadcast: <span id="broadcastAddress"></span></p>

    <p>Jenis IP: <span id="ipType"></span></p>

  </div>


  <script>

    function calculate() {

      const ipAddress = document.getElementById("ipAddress").value;

      const subnetMask = document.getElementById("subnetMask").value;


      // Parse alamat IP dan subnet mask

      const ipParts = ipAddress.split(".");

      const subnetParts = subnetMask.split(".");


      // Hitung alamat jaringan

      const networkAddress = ipParts.map((part, index) => part & subnetParts[index]).join(".");


      // Hitung alamat broadcast

      const invertedSubnet = subnetParts.map(part => 255 - part);

      const broadcastAddress = ipParts.map((part, index) => part | invertedSubnet[index]).join(".");


      // Hitung jumlah host

      const hostCount = Math.pow(2, 32 - subnetParts.reduce((total, part) => total + (255 - part + 1), 0)) - 2;


      // Hitung prefix

      const prefix = subnetParts.map(part => part.toString(2)).join("").replace(/0+$/, "").length;


      // Tentukan jenis IP (Klasik atau Privat)

      let ipType = "Klasik";

      if (ipParts[0] == 10 ||

          (ipParts[0] == 172 && ipParts[1] >= 16 && ipParts[1] <= 31) ||

          (ipParts[0] == 192 && ipParts[1] == 168)) {

        ipType = "Privat";

      }


      // Hitung rentang alamat IP yang bisa digunakan

      const startRange = networkAddress.split(".").map((part, index) => (index === 3) ? parseInt(part) + 1 : parseInt(part)).join(".");

      const endRange = broadcastAddress.split(".").map((part, index) => (index === 3) ? parseInt(part) - 1 : parseInt(part)).join(".");


      // Tampilkan hasil

      document.getElementById("networkAddress").textContent = networkAddress;

      document.getElementById("subnetMaskResult").textContent = subnetMask;

      document.getElementById("prefix").textContent = prefix;

      document.getElementById("binaryIpAddress").textContent = ipParts.map(part => (parseInt(part)).toString(2).padStart(8, "0")).join(".");

      document.getElementById("binaryNetworkAddress").textContent = networkAddress.split(".").map(part => (parseInt(part)).toString(2).padStart(8, "0")).join(".");

      document.getElementById("hostCount").textContent = hostCount;

      document.getElementById("ipRange").textContent = `${startRange} - ${endRange}`;

      document.getElementById("broadcastAddress").textContent = broadcastAddress;

      document.getElementById("ipType").textContent = ipType;

    }

  </script>

</body>

</html>


IP Calculator

IP Calculator


Alamat Jaringan:

Subnet Mask:

Prefix:

Alamat IP (Biner):

Alamat Jaringan (Biner):

Jumlah Host:

Rentang Alamat IP yang Bisa Digunakan:

Alamat Broadcast:

Jenis IP:

Tidak ada komentar:

Posting Komentar

Terbaru

modul pwm dengan arduino pro mini dilengkapi dengan batrai level meter 5 led

  🔋 Contoh Indikator Level Baterai dengan LED (4 Tingkat) 🔧 Tujuan: LED1 menyala jika tegangan ≥ 12.6V (full) LED2 menyala jika teg...

Lainya