Abaixo está o seu endereço IP público (fornecido por ipify.org) e o seu User Agent do browser.
A carregar informação do IP...
Não foi possível obter a informação do seu IP. Tente novamente mais tarde.
Exemplos de Código
Como obter o endereço IP do cliente (num servidor) nas linguagens mais comuns.
// Num servidor Node.js com 'express'
const express = require('express');
const app = express();
// Confiar no proxy (ex: Nginx, Cloudflare)
app.enable('trust proxy');
app.get('/', (req, res) => {
// req.ip obtém o IP do cliente
const clientIp = req.ip;
console.log(clientIp);
res.send(`O seu IP é: ${clientIp}`);
});
app.listen(3000);
from flask import Flask, request
import ipaddress
app = Flask(__name__)
@app.route('/')
def get_ip():
# Tenta obter o IP a partir do header 'X-Forwarded-For'
if request.headers.get('X-Forwarded-For'):
client_ip = request.headers.get('X-Forwarded-For').split(',')[0]
else:
client_ip = request.remote_addr
# Validação (Instanciar a partir de string)
try:
ip = ipaddress.ip_address(client_ip)
return f"O seu IP válido é: {ip}"
except ValueError:
return "IP inválido detectado."
// Num Controller do ASP.NET Core
using Microsoft.AspNetCore.Mvc;
using System.Net;
public class IpController : ControllerBase
{
[HttpGet("/")]
public IActionResult Get()
{
// Obtém o endereço IP do cliente
var clientIp = HttpContext.Connection.RemoteIpAddress;
// Nota: Para isto funcionar atrás de um proxy (Nginx, etc.),
// é preciso configurar o 'ForwardedHeadersMiddleware'.
// Instanciar/Parse de uma string
IPAddress.TryParse("192.0.2.1", out IPAddress ipObject);
return Ok($"O seu IP é: {clientIp}");
}
}
// Num Controller Spring Boot
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import jakarta.servlet.http.HttpServletRequest;
import java.net.InetAddress; // Para instanciar
@RestController
public class IpController {
@GetMapping("/")
public String getIp(HttpServletRequest request) {
String clientIp = request.getHeader("X-Forwarded-For");
if (clientIp == null || clientIp.isEmpty()) {
clientIp = request.getRemoteAddr();
} else {
clientIp = clientIp.split(",")[0].trim();
}
// Instanciar a partir de uma string
// try {
// InetAddress ip = InetAddress.getByName(clientIp);
// } catch (UnknownHostException e) { /* ... */ }
return "O seu IP é: " + clientIp;
}
}
package main
import (
"fmt"
"net"
"net/http"
"strings"
)
func ipHandler(w http.ResponseWriter, r *http.Request) {
clientIp := r.Header.Get("X-Forwarded-For")
if clientIp == "" {
clientIp, _, _ = net.SplitHostPort(r.RemoteAddr)
} else {
clientIp = strings.Split(clientIp, ",")[0]
}
// Instanciar/Parse de uma string
ip := net.ParseIP(clientIp)
if ip == nil {
fmt.Fprintf(w, "IP inválido")
return
}
fmt.Fprintf(w, "O seu IP é: %s", ip.String())
}
# Num Controller Ruby on Rails
# Requer a biblioteca 'ipaddr' (padrão)
require 'ipaddr'
class IpController < ApplicationController
def show
# O Rails trata automaticamente dos headers (ex: 'X-Forwarded-For')
client_ip_string = request.remote_ip
# Instanciar a partir de uma string
begin
ip = IPAddr.new(client_ip_string)
render plain: "O seu IP é: #{ip}"
rescue IPAddr::InvalidAddressError
render plain: "IP inválido detectado."
end
end
end