ipcalc
Az ipcalc egy parancssoros felhasználói program, melynek segítségével az IP-címekkel és alhálózati maszkokkal kapcsolatos számításokat lehet elvégezni. Az ipcalc parancs a megadott IP-cím vagy alhálózati maszk alapján meghatározza az IP-cím osztályát, a hálózati ID-t, az alhálózati maszkot, a szabad IP-címek számát, a hálózat broadcast IP-címét és az első/utolsó használható IP-címeket.[1]
Az ipcalc programot oktatási segédeszköznek szánták, de hasznunkra lehet akkor is, ha összetettebb hálózatot szeretnénk tervezni.
Használata
szerkesztésHálózat számítása hálózati címtartomány alapján
szerkesztésHa egy hálózat a leírásban 111.222.33.44/12 formában van megadva, kiszámíthatjuk a címtartomány az első és utolsó címét, a használandó alhálózati maszkot, továbbá hogy hány kioszthaó IP-cím van az adott tartományban.
ipcalc <IP-cím>/<címtartomány>
is@INF-DESKTOP:~$ ipcalc 192.168.1.0/24
Address: 192.168.1.0 11000000.10101000.00000001. 00000000
Netmask: 255.255.255.0 = 24 11111111.11111111.11111111. 00000000
Wildcard: 0.0.0.255 00000000.00000000.00000000. 11111111
=>
Network: 192.168.1.0/24 11000000.10101000.00000001. 00000000
HostMin: 192.168.1.1 11000000.10101000.00000001. 00000001
HostMax: 192.168.1.254 11000000.10101000.00000001. 11111110
Broadcast: 192.168.1.255 11000000.10101000.00000001. 11111111
Hosts/Net: 254 Class C, Private Internet
Hálózat számítása IP-cím és alhálózati maszk alapján
szerkesztésHa argumentumként IP-címet és alhálózati maszkot adunk meg a programnak, abból szintén megkapjuk a hálózat paramétereit.
ipcalc <IP-cím>/<Alhálózati_maszk>
is@INF-DESKTOP:~$ ipcalc 192.168.16.0/255.255.255.0
Address: 192.168.16.0 11000000.10101000.00010000. 00000000
Netmask: 255.255.255.0 = 24 11111111.11111111.11111111. 00000000
Wildcard: 0.0.0.255 00000000.00000000.00000000. 11111111
=>
Network: 192.168.16.0/24 11000000.10101000.00010000. 00000000
HostMin: 192.168.16.1 11000000.10101000.00010000. 00000001
HostMax: 192.168.16.254 11000000.10101000.00010000. 11111110
Broadcast: 192.168.16.255 11000000.10101000.00010000. 11111111
Hosts/Net: 254 Class C, Private Internet
Hálózati címtartomány optimális felosztása adott méretű alhálózati címtartományokra
szerkesztésAz ipcalc segítségével lehetőségünk van felosztani egy nagyobb hálózatot kisebb résztartományokra. Megadhatjuk, hogy egy résztartományban minimálisan hány IP-cím legyen
ipcalc <-s darab darab ... darab> <IP-cím>/<Alhálózati_maszk>
is@INF-DESKTOP:~$ ipcalc -s 10 20 30 5 7 192.168.16.0/24
Address: 192.168.16.0 11000000.10101000.00010000. 00000000
Netmask: 255.255.255.0 = 24 11111111.11111111.11111111. 00000000
Wildcard: 0.0.0.255 00000000.00000000.00000000. 11111111
=>
Network: 192.168.16.0/24 11000000.10101000.00010000. 00000000
HostMin: 192.168.16.1 11000000.10101000.00010000. 00000001
HostMax: 192.168.16.254 11000000.10101000.00010000. 11111110
Broadcast: 192.168.16.255 11000000.10101000.00010000. 11111111
Hosts/Net: 254 Class C, Private Internet
1. Requested size: 10 hosts
Netmask: 255.255.255.240 = 28 11111111.11111111.11111111.1111 0000
Network: 192.168.16.64/28 11000000.10101000.00010000.0100 0000
HostMin: 192.168.16.65 11000000.10101000.00010000.0100 0001
HostMax: 192.168.16.78 11000000.10101000.00010000.0100 1110
Broadcast: 192.168.16.79 11000000.10101000.00010000.0100 1111
Hosts/Net: 14 Class C, Private Internet
2. Requested size: 20 hosts
Netmask: 255.255.255.224 = 27 11111111.11111111.11111111.111 00000
Network: 192.168.16.0/27 11000000.10101000.00010000.000 00000
HostMin: 192.168.16.1 11000000.10101000.00010000.000 00001
HostMax: 192.168.16.30 11000000.10101000.00010000.000 11110
Broadcast: 192.168.16.31 11000000.10101000.00010000.000 11111
Hosts/Net: 30 Class C, Private Internet
3. Requested size: 30 hosts
Netmask: 255.255.255.224 = 27 11111111.11111111.11111111.111 00000
Network: 192.168.16.32/27 11000000.10101000.00010000.001 00000
HostMin: 192.168.16.33 11000000.10101000.00010000.001 00001
HostMax: 192.168.16.62 11000000.10101000.00010000.001 11110
Broadcast: 192.168.16.63 11000000.10101000.00010000.001 11111
Hosts/Net: 30 Class C, Private Internet
4. Requested size: 5 hosts
Netmask: 255.255.255.248 = 29 11111111.11111111.11111111.11111 000
Network: 192.168.16.96/29 11000000.10101000.00010000.01100 000
HostMin: 192.168.16.97 11000000.10101000.00010000.01100 001
HostMax: 192.168.16.102 11000000.10101000.00010000.01100 110
Broadcast: 192.168.16.103 11000000.10101000.00010000.01100 111
Hosts/Net: 6 Class C, Private Internet
5. Requested size: 7 hosts
Netmask: 255.255.255.240 = 28 11111111.11111111.11111111.1111 0000
Network: 192.168.16.80/28 11000000.10101000.00010000.0101 0000
HostMin: 192.168.16.81 11000000.10101000.00010000.0101 0001
HostMax: 192.168.16.94 11000000.10101000.00010000.0101 1110
Broadcast: 192.168.16.95 11000000.10101000.00010000.0101 1111
Hosts/Net: 14 Class C, Private Internet
Needed size: 104 addresses.
Used network: 192.168.16.0/25
Unused:
192.168.16.104/29
192.168.16.112/28
192.168.16.128/25
Az ipcalc segítségével akár nagyobb méretű alhálózatok címzése is kiszámítható:
is@INF-DESKTOP:~$ ipcalc -s 51000 30000 15000 15000 10.10.0.0/8
Address: 10.10.0.0 00001010. 00001010.00000000.00000000
Netmask: 255.0.0.0 = 8 11111111. 00000000.00000000.00000000
Wildcard: 0.255.255.255 00000000. 11111111.11111111.11111111
=>
Network: 10.0.0.0/8 00001010. 00000000.00000000.00000000
HostMin: 10.0.0.1 00001010. 00000000.00000000.00000001
HostMax: 10.255.255.254 00001010. 11111111.11111111.11111110
Broadcast: 10.255.255.255 00001010. 11111111.11111111.11111111
Hosts/Net: 16777214 Class A, Private Internet
1. Requested size: 51000 hosts
Netmask: 255.255.0.0 = 16 11111111.11111111. 00000000.00000000
Network: 10.0.0.0/16 00001010.00000000. 00000000.00000000
HostMin: 10.0.0.1 00001010.00000000. 00000000.00000001
HostMax: 10.0.255.254 00001010.00000000. 11111111.11111110
Broadcast: 10.0.255.255 00001010.00000000. 11111111.11111111
Hosts/Net: 65534 Class A, Private Internet
2. Requested size: 30000 hosts
Netmask: 255.255.128.0 = 17 11111111.11111111.1 0000000.00000000
Network: 10.1.0.0/17 00001010.00000001.0 0000000.00000000
HostMin: 10.1.0.1 00001010.00000001.0 0000000.00000001
HostMax: 10.1.127.254 00001010.00000001.0 1111111.11111110
Broadcast: 10.1.127.255 00001010.00000001.0 1111111.11111111
Hosts/Net: 32766 Class A, Private Internet
3. Requested size: 15000 hosts
Netmask: 255.255.192.0 = 18 11111111.11111111.11 000000.00000000
Network: 10.1.128.0/18 00001010.00000001.10 000000.00000000
HostMin: 10.1.128.1 00001010.00000001.10 000000.00000001
HostMax: 10.1.191.254 00001010.00000001.10 111111.11111110
Broadcast: 10.1.191.255 00001010.00000001.10 111111.11111111
Hosts/Net: 16382 Class A, Private Internet
4. Requested size: 15000 hosts
Netmask: 255.255.192.0 = 18 11111111.11111111.11 000000.00000000
Network: 10.1.192.0/18 00001010.00000001.11 000000.00000000
HostMin: 10.1.192.1 00001010.00000001.11 000000.00000001
HostMax: 10.1.255.254 00001010.00000001.11 111111.11111110
Broadcast: 10.1.255.255 00001010.00000001.11 111111.11111111
Hosts/Net: 16382 Class A, Private Internet
Needed size: 131072 addresses.
Used network: 10.0.0.0/15
Unused:
10.2.0.0/15
10.4.0.0/14
10.8.0.0/13
10.16.0.0/12
10.32.0.0/11
10.64.0.0/10
10.128.0.0/9
A kimenet formázása
szerkesztésAz ipcalc kimenetét formázhatjuk is, ha nincs szükségünk a bináris formára, és fekete-fehér kimenetet szeretnénk látni, az is megoldható:
is@INF-DESKTOP:~$ ipcalc -b -n 172.16.0.0/12
Address: 172.16.0.0
Netmask: 255.240.0.0 = 12
Wildcard: 0.15.255.255
=>
Network: 172.16.0.0/12
HostMin: 172.16.0.1
HostMax: 172.31.255.254
Broadcast: 172.31.255.255
Hosts/Net: 1048574 Class B, Private Internet