IP -Adress -Segmentierungsberechnung
<scriptUnuage = "jscript" runat = "server">
FunctionIPDecode (EIP) {
varip1, ip2, ip3, ip4;
IP1 = MOVEBYTER (EIP & 0xFF00000000,3);
IP2 = MOVEBYTER (EIP & 0x00FF0000, 2);
IP3 = MOVEBYTER (EIP & 0x0000ff00,1);
IP4 = EIP & 0x000000ff;
returnIP1+"."+ip2+"."+ip3+"."+ip4;
}
functionMovebytel (num, bytenum) {
returnnum << = (bytenum*8)
}
functionMovebyter (num, bytenum) {
returnnum >>> = (bytenum*8)
}
</script>
In VBS gibt es keinen Betrieb, daher ist es nicht gut, JS und VBS auf einer Seite zu verwenden. Es ist auch in Ordnung, wenn Sie VBS verwenden, aber es ist ein bisschen ausführlich. Und eines ist ein bisschen auffällig. Wenn Sie sich in VBS ("202.102.29.6", ".") Teilen, erhalten Sie drei Nummern 202, 102 und 29, und Sie erhalten nicht die letzten 6, also müssen Sie die IP in Spalten ändern ("202.102.29.6" & ".
Ich habe es mit VBS gemacht, und da es keine Operation gibt, ist es problematischer
<%
functionIP2int (IPSTR)
Dimiptemp, max
iptemp = split (ipstr & ".", ".")
max = ubund (iptemp)
Ifmax <> 4Then
Ausgangsfunktion
Endif
Dima, b, ich
a = "& h"
fei = 0to3
b = hex (iptemp (i))
iflen (b) = 1Then
B = "0" & b
Endif
a = a & b
nächste
ip2int = clng (a)
Endfunktion
FunctionInt2IP (IP)
Dimiptemp, a, ipstr, i, Länge
iptemp = hex (IP)
Länge = 8-len (IPTEMP)
fei = 1tolength
iptemp = "0" & iptemp
nächste
a = links (iptemp, 2)
a = "& h" & a
i = cint (a)
a = cstr (i)
ipstr = a & "."
A = MID (IPTEMP, 3,2)
a = "& h" & a
i = cint (a)
a = cstr (i)
ipstr = ipstr & a & "."
A = MID (IPTEMP, 5,2)
a = "& h" & a
i = cint (a)
a = cstr (i)
ipstr = ipstr & a & "."
a = rechts (iptemp, 2)
a = "& h" & a
i = cint (a)
a = cstr (i)
ipstr = ipstr & a
int2ip = ipstr
Endfunktion
DimTestip, Testint
testip = "202.102.29.6"
testint = ip2int (testip)
response.writetestip & "WillbeencodedTo <fontcolor = rot>" & testint & "</font> <br>"
response.writetestip & "WillbeDeCodedTo <fontcolor = rot>" & int2ip (testint) & "</font> <br>"