_GetIP() überarbeitung

  • howdy

    vorweg: hoffe das es der richtige ort für den thread is^^

    da ich bemerken musste das der standard-server für die funktion _GetIP() an der ostküste der USA liegt eignet sich dieser natürlich nicht besonders für eine schnelle abfrage der IP(oftmals endet es sogar in nem timeout und man kam garnicht an die IP)..

    fazit: sehr unzuverlässig

    somit biete ich euch an folgendes in der Inet.au3 zu ändern

    macht aus dem hier:

    [autoit]

    Func _GetIP()
    Local $aReturn, $bRead, $sRead
    $bRead = InetRead("http://checkip.dyndns.org/")
    $sRead = BinaryToString($bRead)
    $aReturn = StringRegExp($sRead, '(?s)(?i)<body>Current IP Address: (.*?)</body>', 3)
    If @error = 0 Then
    Return $aReturn[0]
    EndIf

    [/autoit][autoit][/autoit][autoit]

    $bRead = InetRead("http://automation.whatismyip.com/n09230945.asp") ; http://forum.whatismyip.com/f14/our-automation-rules-t241/
    $sRead = BinaryToString($bRead)
    If @error Then
    Return SetError(1, 0, -1)
    EndIf
    Return $sRead
    EndFunc ;==>_GetIP

    [/autoit]

    einfach das hier:

    [autoit]

    Func _GetIP()
    Local $aReturn = BinaryToString(InetRead("http://checkip.cookie-technology.net/"))
    If @error = 0 Then
    Return $aReturn
    Else
    Return -1
    EndIf

    EndFunc ;==>_GetIP

    [/autoit]

    dem einen oder anderen neugierigen wird aufgefallen sein das ich ein paar byte spare und das "your current ip" gedöhns einfach weggelassen hab und nur die ip anzeigen lasse

    wichtig: natürlich gilt für die benutzung meines servers das ich kein abusing tolleriere.. das bedeutet.. nur sinnvolle nutzungen..
    fakto: keine 30 abfragen in einer sekunde.. so oft ändert sich die ip nicht^^

    edit: P.S.: ihr könnt bei InetRead auch die option 1 setzen um sicherzustellen das definitiv die aktuelle ip gezogen wird

    mfg
    sgtigram

    3 Mal editiert, zuletzt von SgtIgram (8. November 2013 um 09:29)

  • @xor: ne eben nicht .. erstens dauerts länger weils deutlich mehr daten gibt.. und du machst es nötig das string.au3 includet sein muss..

    also ist deine methode schlechter

    edit: mal ganz abgesehn davon das ein layout einer solchen website geändert werden kann.. und dann wär es sowieso hinfällig

    mfg
    sgtigram

  • anflug von paranoia? auf wieistmeineip.de wird deine ip von etlichen server geloggt.. allein aus den grund werbung..
    das ist also nur haarspalterei.. und nein.. ich logge sie nicht..