Demo program:
Cara mengerjakan manual:
Source code (Python 2.7):
x = raw_input ('Masukkan nomor IP (Cth. 192.168.1.1) :')
y = raw_input ('Masukkan subnet mask (Cth. 255.255.255.192) :')
a = x.split('.')
b = y.split('.')
c = []
d = []
# c = IP address (x) ter-list
for i in a:
c.append(int(i))
# d adalah subnetmask (y) ter-list
for i in b:
d.append(int(i))
# e adalah hasil proses AND antara IP address ter-list dan subnetmask ter-list
# e akan digunakan untuk "membersihkan" IP address
e = []
for i in range (0,4):
e.append(c[i]&d[i])
# g adalah hasil pengurangan antara subnetmask all 1 dan subnetmask ter-list
# g digunakan untuk increment IP address
f = [255, 255, 255, 255]
g = []
for i in range (0,4):
g.append(f[i]-d[i])
# h adalah hasil pengurangan antara
h = []
for i in range (0,4):
h.append(abs(e[i]-g[i]))
for i in range (e[0],h[0]+1):
for j in range (e[1],h[1]+1):
for k in range (e[2],h[2]+1):
for l in range (e[3],h[3]+1):
print str(i) +"."+str(j)+"."+str(k)+"."+str(l)
Cara mengerjakan manual:
Source code (Python 2.7):
x = raw_input ('Masukkan nomor IP (Cth. 192.168.1.1) :')
y = raw_input ('Masukkan subnet mask (Cth. 255.255.255.192) :')
a = x.split('.')
b = y.split('.')
c = []
d = []
# c = IP address (x) ter-list
for i in a:
c.append(int(i))
# d adalah subnetmask (y) ter-list
for i in b:
d.append(int(i))
# e adalah hasil proses AND antara IP address ter-list dan subnetmask ter-list
# e akan digunakan untuk "membersihkan" IP address
e = []
for i in range (0,4):
e.append(c[i]&d[i])
# g adalah hasil pengurangan antara subnetmask all 1 dan subnetmask ter-list
# g digunakan untuk increment IP address
f = [255, 255, 255, 255]
g = []
for i in range (0,4):
g.append(f[i]-d[i])
# h adalah hasil pengurangan antara
h = []
for i in range (0,4):
h.append(abs(e[i]-g[i]))
for i in range (e[0],h[0]+1):
for j in range (e[1],h[1]+1):
for k in range (e[2],h[2]+1):
for l in range (e[3],h[3]+1):
print str(i) +"."+str(j)+"."+str(k)+"."+str(l)
No comments:
Post a Comment