21 lines
682 B
JavaScript
21 lines
682 B
JavaScript
// pages/api/get-talasIP.js
|
|
|
|
export default function handler(req, res) {
|
|
// Der x-forwarded-for Header könnte mehrere IP-Adressen enthalten, getrennt durch Kommas
|
|
let clientIp =
|
|
req.headers["x-forwarded-for"]?.split(",").map((ip) => ip.trim())[0] ||
|
|
req.socket.remoteAddress;
|
|
|
|
// Entfernen möglicher IPv6 "mapped" IPv4 Adressen
|
|
if (clientIp?.includes("::ffff:")) {
|
|
clientIp = clientIp.split("::ffff:")[1];
|
|
}
|
|
|
|
// Nur IPv4 Adressen weitergeben, IPv6 Adressen ausschließen
|
|
if (clientIp && clientIp.includes(":")) {
|
|
clientIp = ""; // Dies setzt die IP auf leer, wenn es sich um eine IPv6-Adresse handelt
|
|
}
|
|
|
|
res.status(200).json({ ip: clientIp });
|
|
}
|