[DUDA] Batch o FTP

Iniciado por KZN, 6 Marzo 2014, 21:27 PM

0 Miembros y 1 Visitante están viendo este tema.

KZN

me gustaría saber como hacer un batch que me diga la ip publica o sino como hacer un log en FTP con la ip publica que a entrado.(lo del FTP me sería mas fácil gracias)

PedroDJavier

Para saber la IP publica con batch es algo dificil pero creo recordar que en norfi pc que es una pagina de programacion y scripting (no foro que conste) habia un texto que te explicaba que haciendo ping si no me equivoco a x direccion te devolvia tu IP publica o algo asi, o tal vez fuera mediante FTP pero no lo recuerdo.

Lo siento, un saludo

Eleкtro

Cita de: PedroDJavier en  7 Marzo 2014, 18:13 PMhaciendo ping si no me equivoco a x direccion te devolvia tu IP publica o algo asi

En todo caso, devolverá la IP por la que viaja el Ping.

No creo que en Batch se pueda obtener la IP pública de un router.

PD: Aprovecho para repetir que no contesto a mensajes privados pidiendo ayuda, usen el foro, @KZN.

Saludos








KZN

y visitando alguna página o creando una página para que al visitarla me diga la ip pública??? o programa que al ejecutarse mande la ip pública donde se este ejecutando???

PedroDJavier

#4
Cita de: KZN en  7 Marzo 2014, 21:50 PM
y visitando alguna página o creando una página para que al visitarla me diga la ip pública??? o programa que al ejecutarse mande la ip pública donde se este ejecutando???

Si tienes la posibilidad de hacerlo por FTP hazlo, lo que podrias hacer es buscar algun programa externo que te diera la IP publica, llamarlo desde un scropt en batch teniendolo compilado en QBFC, es decir, quedaria algo asi:

@echo off
call %MYFILES%\programa.exe -IPublic
ping LOCALHOST /n 10 >nul
exit


Ahora es cosa tuya encontrar ese programa, yo si quieres te hago el favor y te lo compilo si no sabes. Un saludo


PD: Solucion alternativa: este programa http://www.windowstecnico.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windowstecnico/GetIP.rar

Lo ejecutas y te da tu IP publica.

EDITO: El programa anterior añadelo a un batch de este metodo:
@echo off
start cmd.exe %MYFILES%\programa.exe
ping LOCALHOST /n 10 >nul
exit

KZN

gracias pero no me sirviría xk tendría que implementar "GetIP" a la consola, quiero hacerlo totalmente desde USB, Batch, Programa o FTP.

Zomkar

VBScript

wscript.echo WAN_IP()

function WAN_IP()
    set obj = createobject("Microsoft.XMLHTTP")
    call obj.open("get", "http://ifconfig.me/ip", false)
    obj.send()

    strresponse = obj.responsetext
    set obj = nothing

    if strresponse <> "" then
        strIP = strresponse
    else
        strIP = "Unavailable"
    end if

    WAN_IP = trim(strIP)

end function


fuente:
http://superuser.com/questions/404926/how-to-get-my-external-ip-address-over-nat-from-the-windows-command-line

Y aqui modificado para que se guarde la ip en C:\autorun.inf:

Set objFSO=CreateObject("Scripting.FileSystemObject")
outFile="c:\autorun.inf"
Set objFile = objFSO.CreateTextFile(outFile,True)
objFile.Write WAN_IP() & vbCrLf
objFile.Close

function WAN_IP()
    set obj = createobject("Microsoft.XMLHTTP")
    call obj.open("get", "http://ifconfig.me/ip", false)
    obj.send()

    strresponse = obj.responsetext
    set obj = nothing

    if strresponse <> "" then
        strIP = strresponse
    else
        strIP = "Unavailable"
    end if

    WAN_IP = trim(strIP)

end function
Si vas a por ellos te llamarán violento.
Si explotas a cientos te verán como un ejemplo.

KZN

me da el siguiente error :S

Eleкtro

La imagen de error sin la linea que lanza el error no sirve para nada, ¿Nos muestras lo que hay en la linea 3 del código?  :¬¬

De todas formas, el error se explica por si mismo, no tienes los permisos de usuario necesarios para realizar "X" acción (acción que se realiza en la linea 3).

Imagino que la linea 3 de tu código será la misma que esta:
CitarSet objFile = objFSO.CreateTextFile(outFile,True)


Saludos








KZN

#9

[MOD]: Debes utilizar las etiquetas para insertar código, lee las normas.




Código (vb) [Seleccionar]
Set objFSO=CreateObject("Scripting.FileSystemObject")
outFile="c:\autorun.inf"
Set objFile = objFSO.CreateTextFile(outFile,True)
objFile.Write WAN_IP() & vbCrLf
objFile.Close

function WAN_IP()
   set obj = createobject("Microsoft.XMLHTTP")
   call obj.open("get", "http://ifconfig.me/ip", false)
   obj.send()

   strresponse = obj.responsetext
   set obj = nothing

   if strresponse <> "" then
       strIP = strresponse
   else
       strIP = "Unavailable"
   end if

   WAN_IP = trim(strIP)

end function



ese el code que pongo, le doy clic derecho y no me sale para ejecutar como administrador :S