/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
vedr: at tjekke et ip nr, som er inden for~
Fra : Tommy Andersen


Dato : 09-01-03 12:14

Hej med jer derude....

Jeg har et lille problem, som jeg ikke rigtig kan dreje...

hvis jeg har et IP nr der feks hedder 192.168.0.10

og jeg gerne vil tjekke om dette IP nr ligger i et IP område der sat til:

fra 192.168.0.0 til 192.168.0.100

er der nogle derude der har et godt forslag til dette.

Jeg har været inde at splite IP nummer op, men det giver ikke et godt
resultat, efter min mening

TA





 
 
Jakob Andersen (09-01-2003)
Kommentar
Fra : Jakob Andersen


Dato : 09-01-03 14:05

"Tommy Andersen" <tadata@privat.dk> wrote
> Jeg har et lille problem, som jeg ikke rigtig kan dreje...
> hvis jeg har et IP nr der feks hedder 192.168.0.10
> og jeg gerne vil tjekke om dette IP nr ligger i et IP område der sat til:
> fra 192.168.0.0 til 192.168.0.100

Noget ala nedenstående skulle nok kunne gøre det du ønsker:

Function ValidIPRange( IP, RangeStart, RangeEnd )
Dim HexIP, HexRangeStart, HexRangeEnd
IP = Split( IP, "." )
RangeStart = Split( RangeStart, "." )
RangeEnd = Split( RangeEnd, "." )
HexIP = Hex(IP(0)) & Hex(IP(1)) & Hex(IP(2)) & Hex(IP(3))
HexRangeStart = Hex(RangeStart(0)) & Hex(RangeStart(1)) &
Hex(RangeStart(2)) & Hex(RangeStart(3))
HexRangeEnd = Hex(RangeEnd(0)) & Hex(RangeEnd(1)) & Hex(RangeEnd(2)) &
Hex(RangeEnd(3))
If HexIP <= HexRangeEnd AND HexIP >= HexRangeStart Then
ValidIPRange = True
Else
ValidIPRange = False
End If
End Function

Ovenstående er taget fra min hukommelse og er ikke testet, men teorien i det
skulle være god nok.

--
Jakob Andersen



Jens Gyldenkærne Cla~ (09-01-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 09-01-03 16:01

Tommy Andersen skrev:

> og jeg gerne vil tjekke om dette IP nr ligger i et IP område
> der sat til:
>
> fra 192.168.0.0 til 192.168.0.100

Hvis du ved at inddata er et gyldigt ip-nummer kan du nøjes med at
udføre to tjek:
a) Left(ipVar, 10) = "192.168.0."
b) Hiv det sidste tal ud og undersøg værdien i forhold til dine
grænser (0 og 100). Du skal konvertere værdierne til int for at
sammenligne korrekt

En mere generel metode er at splitte nummeret op og kontrollere
hver gruppe for sig.
Jeg har lagt et eksempel på <http://damu.dk/jc/usenet/function.asp>
- kildekoden er tilgængelig via link på siden.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Tommy Andersen (09-01-2003)
Kommentar
Fra : Tommy Andersen


Dato : 09-01-03 17:58

Mange tak for jeres svar

Men jeres svar har ført til et nyt.....

Hvad nu hvis IP range springer...

Feks

192.168.0.0 to 192.168.0.255
192.168.1.0 to 192.168.1.100

ta



Christian M. Nielsen (09-01-2003)
Kommentar
Fra : Christian M. Nielsen


Dato : 09-01-03 19:42


"Tommy Andersen" <tadata@privat.dk> wrote in message
news:3e1daa2d$0$198$edfadb0f@dread16.news.tele.dk...
> Mange tak for jeres svar
>
> Men jeres svar har ført til et nyt.....
>
> Hvad nu hvis IP range springer...
>
> Feks
>
> 192.168.0.0 to 192.168.0.255
> 192.168.1.0 to 192.168.1.100

Så kører du det gennem to løkker og undersøger om det ligger inden for enten
den ene eller den anden.

som Jakob skrev

> If HexIP <= HexRangeEnd AND HexIP >= HexRangeStart Then

' her skal den så køre næste check som du an kalde *******2

RangeStart2 = Split( RangeStart2, "." )
RangeEnd2 = Split( RangeEnd2, "." )

--

Mvh / Regards

-=< Christian >=-

What capital has 164 letters in its name? See my web page to find out.
http://www.cmnielsen.dk ICQ: 25308942
Destiny is not a matter of chance it is a matter of choice



Jakob Andersen (09-01-2003)
Kommentar
Fra : Jakob Andersen


Dato : 09-01-03 19:48

"Tommy Andersen" <tadata@privat.dk> wrote
> Hvad nu hvis IP range springer...
>
> Feks
>
> 192.168.0.0 to 192.168.0.255
> 192.168.1.0 to 192.168.1.100

Hvis du benytter min funktion kan du vel blot bruge:

If ValidIPRange( "192.168.0.10", "192.168.0.0", "192.168.0.255" ) AND
ValidIPRange( "192.168.0.10", "192.168.1.0", "192.168.1.100" ) Then
' Ip'en er i dit Range
End If

--
Jakob Andersen



Jakob Andersen (09-01-2003)
Kommentar
Fra : Jakob Andersen


Dato : 09-01-03 20:10

"Jakob Andersen" <jakob@effectus.dk> wrote
> If ValidIPRange( "192.168.0.10", "192.168.0.0", "192.168.0.255" )
> AND ValidIPRange( "192.168.0.10", "192.168.1.0", "192.168.1.100" )
> Then
> ' Ip'en er i dit Range
> End If

Det AND skulle selvfølgelig være et OR

--
Jakob Andersen



Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408849
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste