Jump to content

mIRC Scripting: IP Tracker


Sponz

Recommended Posts

Copy and paste this code for a new remote window alt+r

right click on channel and then click on Tracert

now put any ip that you would to track

 

well, this script will track from different websities

some informations, like

 

Country

City

longitude, latitude

ISP address, phone, orgname

IP ping

Continent

Region

Postal code

as i said, this code track from different websities

dialog Tracert {
  title "Tracert ip Project Codename: Ärtëmïs"
  size -1 -1 190 189
  option dbu
  edit "", 1, 3 12 87 11, limit 15
  text "Ip:", 2, 3 2 25 8
  button "Ok", 3, 93 12 22 12
  text "Country:", 4, 5 25 25 8
  text "", 5, 32 25 40 8
  text "Region:", 6, 5 36 25 8
  text "", 7, 32 36 41 8
  text "City:", 8, 5 46 25 8
  text "", 9, 32 47 42 8
  text "Country Capital:", 10, 5 56 42 8
  text "", 11, 50 57 37 8
  text "Population:", 12, 5 67 29 8
  text "", 13, 38 67 40 8
  text "Latitude:", 14, 5 77 27 8
  text "", 15, 34 77 41 8
  text "Longitude:", 16, 5 87 28 8
  text "", 17, 35 87 42 8
  text "Time Zone:", 18, 5 97 30 8
  text "Nationality Singular:", 20, 81 25 52 8
  text "", 21, 136 25 44 8
  text "Nationality Plural:", 22, 81 35 52 8
  text "", 23, 136 35 46 8
  text "Continent:", 24, 81 44 39 8
  text "", 25, 122 44 44 8
  text "Currency:", 26, 91 56 30 8
  text "", 27, 125 56 45 8
  text "Owner:", 28, 81 67 25 8
  text "", 29, 108 67 75 14
  text "Postal Code:", 30, 81 86 34 8
  text "", 31, 117 86 35 8
  text "Phone:", 34, 81 98 25 8
  text "", 35, 109 98 64 8
  text "Spam List:", 36, 5 108 29 8
  text "", 37, 36 108 150 16
  text "", 38, 37 97 32 8
  list 41, 5 139 180 45, size vsbar
  text "Addcional Information:", 42, 6 129 62 8
}

alias tracert { 
  if (!$dialog(tracert)) { dialog -m tracert tracert }
  else { dialog -v tracert tracert }
}

on *:dialog:tracert:sclick:3:{
  if ($did(1).text) { 
    did -r tracert 5,7,9,11,13,15,17,21,23,25,27,29,31,35,37,38,41
    sockopen traceip ipchecking.com 80
    set %Trace1 $did(1).text
    sockopen TIP geobytes.com 80
    set %TIP $did(1).text
    sockopen iptrace www.infobyip.com 80
    sockmark iptrace $did(1).text
    sockopen ipping www.infobyip.com 80
    sockmark ipping $did(1).text
    sockopen iptrack www.infobyip.com 80
    sockmark iptrack $did(1).text
    sockopen ip www.find-ip-address.org 80
    sockmark ip $did(1).text
  }
}

on *:SOCKOPEN:traceip: {
  if ($sockerr) { did -a tracert 41 Error! An error happenned with server or script, wait a minute and try again later error message: $sock(tracert).wsmsg  }
  else {
    sockwrite -n $sockname GET / $+ ?ip= $+ %Trace1 HTTP/1.0
    sockwrite -n $sockname Host: ipchecking.com
    sockwrite -n $sockname Connection: Keep-Alive
    sockwrite -n $sockname $crlf
    did -a tracert 41 ===========================================================
  }
}

on *:SOCKREAD:traceip: { 
  sockread %traceip
  if (*owner:* iswm %traceip) { 
    did -a tracert 29 $remove($remove($htmlfree(%traceip),58),owner:)
  } 
  if (*PostalCode:* iswm %traceip) {
    did -a tracert 31 $htmlfree(%traceip)
  }
  if (Address: isin %traceip) {
    did -a tracert 41 =====IP ADDRESS=====================================================
    did -a tracert 41 $htmlfree(%traceip) 
  }
  if (SORBS isin %traceip) {
    did -a tracert 37 $remove($htmlfree(%traceip),SORBS:)
  } 
  if (phone: isin %traceip) { 
    did -a tracert 35 $remove($htmlfree(%traceip),phone:,[])
  }
  if (OrgName: isin %traceip) {
    did -a tracert 41 $htmlfree(%traceip) 
  }
  if (descr: isin %traceip) {
    did -a tracert 41 41 $htmlfree(%traceip) 
  }
  if (person: isin %traceip) {
    did -a tracert 41 $htmlfree(%traceip)
  }
  if (Host name: isin %traceip) {
    did -a tracert 41 $remove($htmlfree(%traceip), ) 
  }
}

on *:SOCKOPEN:TIP: { 
  if ($sockerr) { did -a tracert 41 Error! An error happenned with server or script, wait a minute and try again later error message: $sock(tracert).wsmsg }
  else {
    sockwrite -n $sockname GET / $+ IpLocator.htm?GetLocation&IpAddress= $+ %TIP HTTP/1.0
    sockwrite -n $sockname Host: geobytes.com
    sockwrite -n $sockname Connection: Keep-Alive
    sockwrite -n $sockname $crlf
  }
}

on *:SOCKREAD:TIP: { 
  sockread %TIPstats
  if $regex(%TIPstats,/<input name="ro-no_bots_pls8" value="(.+)\s" size="20" readonly><\/td>/) {
    did -a tracert 11 $regml(1)
  }
  if $regex(%TIPstats,/<input name="ro-no_bots_pls17" value="(.+)" size="20" readonly><\/td>/) {
    did -a tracert 9 $regml(1)
  }
  if $regex(%TIPstats,/<input name="ro-no_bots_pls10" value="(.+)" size="20" readonly><\/td>/) {
    did -a tracert 15 $regml(1)
  }
  if $regex(%TIPstats,/<input name="ro-no_bots_pls19" value="(.+)" size="20" readonly><\/td>/) {
    did -a tracert 17 $regml(1)
  }
  if $regex(%TIPstats,/<input name="ro-no_bots_pls9" value="(.+)" size="20" readonly><\/td>/) {
    did -a tracert 38 $regml(1)
  }
  if $regex(%TIPstats,/<input name="ro-no_bots_pls1" value="(.+)" size="20" readonly><\/td>/) {
    did -a tracert 27 $regml(1)
  }
  if $regex(%TIPstats,/<input name="ro-no_bots_pls3" value="(.+)" size="20" readonly><\/td>/) {
    did -a tracert 13 $regml(1)
  }
  if $regex(%TIPstats,/<input name="ro-no_bots_pls7" value="(.+)" size="20" readonly><\/td>/) {
    did -a tracert 21 $regml(1)
  }
  if $regex(%TIPstats,/<input name="ro-no_bots_pls2" value="(.+)" size="20" readonly><\/td>/) {
    did -a tracert 23 $regml(1)
  }
  if $regex(%TIPstats,/<input name="ro-no_bots_pls4" value="(.+)" size="20" readonly><\/td>/) {
    did -a tracert 25 $regml(1)
  }
  if $regex(%TIPstats,/<input name="ro-no_bots_pls13" value="(.+)" size="20" readonly><\/td>/) {
    did -a tracert 5 $regml(1)
  }
  if $regex(%TIPstats,/<input name="ro-no_bots_pls15" value="(.+)" size="20" readonly><\/td>/) {
    did -a tracert 7 $regml(1)
  }
}
on *:sockopen:iptrace: {
  sockwrite -nt $sockname GET $+(/ip-,$sock(iptrace).mark,.html) HTTP/1.1
  sockwrite -nt $sockname Host: $+(www.infobyip.com,$str($crlf,2))
}
on *:sockread:iptrace: {
  var %iptrace | sockread %iptrace
  if ($regex(%iptrace,/Country<\/td><td.+>(.+)<\/td>/)) {
    did -a tracert 41 =====IP LOCATION===================================================== 
    did -a tracert 41 Country: $regml(1)
  }
  if ($regex(%iptrace,/Postal code<\/td><td.+>(.+)<\/td>/)) {
    did -a tracert 41 Postal code: $regml(1)
  }
  if ($regex(%iptrace,/City<\/td><td.+>(.+)<\/td>/)) {
    did -a tracert 41 City: $regml(1)
  }
  if ($regex(%iptrace,/Latitude<\/td><td.+>(.+)<\/td>/)) {
    did -a tracert 41 Latitude: $regml(1)
  }
  if ($regex(%iptrace,/Longitude<\/td><td.+>(.+)<\/td>/)) {
    did -a tracert 41 Longitude: $regml(1) 
  } 
  if ($regex(%iptrace,/State/region<\/td><td.+>(.+)<\/td>/)) {
    did -a tracert 41 State/region: $regml(1)
  }
}

on *:sockopen:ipping: {
  sockwrite -nt $sockname GET $+(/ping-,$sock(ipping).mark,.html) HTTP/1.1
  sockwrite -nt $sockname Host: $+(www.infobyip.com,$str($crlf,2))
}
on *:sockread:ipping: {
  sockread %ipping  
  if (*packets* iswm %ipping) {
    did -a tracert 41 =====IP PING=====================================================
    did -a Tracert 41 Ping: %ipping
  }
}

on *:sockopen:iptrack: {
  sockwrite -nt $sockname GET $+(/ipwhois-,$sock(iptrack).mark,.html) HTTP/1.1
  sockwrite -nt $sockname Host: $+(www.infobyip.com,$str($crlf,2))
}
on *:sockread:iptrack: {
  sockread %iptrack
  if (*Address:* iswm %iptrack) {
    did -a tracert 41 %iptrack
  } 
  if (*City:* iswm %iptrack) {
    did -a tracert 41 %iptrack
  }
  if (*PostalCode:* iswm %iptrack) {
    did -a tracert 41 %iptrack
  }
  if (*OrgName:* iswm %iptrack) {
    did -a tracert 41 =====IP DATA===================================================== 
    did -a tracert 41 %iptrack
  }
  if (*OrgTechPhone:* iswm %iptrack) {
    did -a tracert 41 %iptrack
  }
  if (*Country:* iswm %iptrack) {
    did -a tracert 41 %iptrack
  }
}

on *:sockopen:ip:{
  var %iplookup $+(scrollx=0&scrolly=396&ip=,$sock(ip).mark)
  var %socket sockwrite -nt ip
  %socket POST /ip-address-locator.php HTTP/1.1
  %socket Host: $sock(ip).addr
  %socket Content-Type: application/x-www-form-urlencoded
  %socket Content-Length: $len(%iplookup)
  %socket $crlf $+ %iplookup
}
on *:sockread:ip: {
  var %ip | sockread %ip
  if $regex(%ip,/<b>IP Country Name</b>\:(.*)\s/iS) {
    if $token($regsubex($regml(1),/<[^>]*>| |ip/ig,),1-2,32) {      
      did -a tracert 41 IP Country Name: $remove($+($v1), Country)
    }
  }
  if (*IP Continent Population* iswm %ip) {
    did -a tracert 41 $htmlfree(%ip)
  }
  if (*IP Continent Area* iswm %ip) {
    did -a tracert 41 $htmlfree(%ip)
  }
  if (*IP Continent Total Population* iswm %ip) {
    did -a tracert 41 $htmlfree(%ip)
  }
  if (*IP Continent Density People* iswm %ip) {
    did -a tracert 41 $htmlfree(%ip)
  }
  if (*IP Language* iswm %ip) {
    did -a tracert 41 =====IP INFORMATION=====================================================  
    did -a tracert 41 Language $+ $remove($htmlfree(%ip),$chr(9),IP country latitude and langitude,IP country capital,IP Language,$chr(44))
  }
  if (*IP Currency* iswm %ip) {
    did -a tracert 41 Currency $+ $remove($htmlfree(%ip),$chr(9),IP Currency, IP address converter,We will try to add more IP module in future but we can,$chr(44),$chr(46))
  }
}

menu * {
   Tracert:{ 
  tracert
}
}
alias htmlfree {
  var %x, %i = $regsub($1-,/(^[^<]*>|<[^>]*>|<[^>]*$)/g,$null,%x), %x = $remove(%x,$chr(9))
  return %x
} 


credits _Dean_

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Posts

    • From my personal experiences 🙂   Few months ago I decided to create my own Essence project. Project needs website, and I do not specialize in frontend development (t.y. i can make web work, but it won't be pretty for eye). So I search and find a guy in Discord, which claims he can make me a good looking HTML website for 30 EUR, prove some screenshots from his previous work. I agree. 1 week later, I get my HTML website, make few changes to contents, update URLs and upload it to FTP. Site looks good, I am happy that this headache is no more.   Few months passes. I randomly crawl through other Essence server websites scouting for good ideas for my own project. Suddenly one of russians project website opens and.. it's the same website as one I have 😉 perfectly absolutely same layout, colours, etc etc etc. I contact my guy to ask what the hell, to get blocked 😉  So I find a weekend worth of my time. Find HTML5 boilerplate generator and ask it to include Bootstrap 5 and some other stuff. Open Bootstrap documentation, drink two energy drinks on instant and start working my backend-inspired HTML black magic... Once I found suiting firefly effect for header, result looked oikay for me: Absolutely no magic or beauty here, but: * Unique (and probably nobody cares to rip it) * Done for free in ~10 hours by non-frontend dev * Most modern browsers friendly * Completely static content, loads instantly. No PHP at all * Sidebar statuses (online, pvp, pk) are pulled from account manager REST API endpoint and is cached for 5 minutes. Account manager runs separately from website frontend and has access to server DB. Where could/will it get better? * Code in Vue instead of HTML - time concerns only, but Vue is superior compared to HTML/PHP for supporting desktop/mobile, easing development by miles. Need to learn how to use it properly. * Way to manage content from backend - in my instance I think account manager is not really meant for that. Vue can help here too - there are components for content building. * Currently default Bootstrap components are used. Would be nice to have custom and more vibrant buttons. Guess what, Vue can help here too.   tl;dr don't buy 30EUR website, it will be ripped or shit. you better make your own website. Be curious. I am backend developer, I obviously have general idea how frontend works. But imho everyone who can make L2 server by editing NPC HTMLs, also can make their own simple website. ChatGPT and other AIs are your friends. Bootstrap. jQuery documentations are your friends. And when you feel good and comfortable with HTML, if you like, you can continue learning Vue, or going backend. Now, as for the top sites. You really need to invest money to make new project work. I mean really, really much money. For this concept to work, top website itself must get visited. But if you can sort that your top site would be popular amongst players, then it's a really very simple concept, as far as current 2004-ish sites goes. I think simple, working concept of this, maybe without proper frontend, but with implemented backend logics (add/edit/disable server, sort by votes count (top list), vote for server with verification, callback to server endpoint - all of that can be done using Symfony in mostly 5 days, with lots of breaks for coffee and a smoke 😉. Experienced mid frontend dev would make a Vue/React frontend for it in another 5 days. it's really really simple concept 🙂  
    • Need cheap aged discord accounts ? :  https://campsite.bio/utchihaamkt DISCORD USERNAME : utchiha_market TELEGRAM : https://t.me/utchiha_market Discover new products in our exclusive server today : https://discord.gg/hoodservices
    • i've copyed the files from a server that has it , like all except system folder to another that didn't had the feature and it worked but i can't find any file to resemble save acc or something
  • Topics

×
×
  • Create New...