webForumDet fria alternativet

Samma ip?

5 svar · 726 visningar · startad av Nexus86

Nexus86Medlem sedan okt. 20022 683 inlägg
#1

Tidigare idag stötte jag på en användare på min egen server som hade samma ip som mig när jag hämtade det med $_SERVER['REMOTE_ADDR']. Hur sjutton kan det gå till?

r/ Och det var ingen som sitter på samma uppkoppling. Det är jag 100 på.

K++Medlem sedan juli 2002183 inlägg
#2

Remote_addr är inte alltid så extremt säkert, byggde en funktion för det en gång m.h.a. tipsen som finns på php.net's sida.

PeeerMedlem sedan mars 20025 362 inlägg
#3

Det är inte så att du har ex. ett cronjob på den servern som startar ex. lynx och surfar till någon av dina sidor?

K++ Kan du utveckla det där? Vad är det som inte är säkert? Visar den ett felaktigt IP menar du?

Nexus86Medlem sedan okt. 20022 683 inlägg
#4

Kanske glömde nämna det men jag kör Windows Server så det är inte så stor risk att den kör ett cronjob och startar lynx. ;)

K++Medlem sedan juli 2002183 inlägg
#5

Peeer Ja, det har hänt att remote_address _kan_ visa fel adress eller ingen adress allt, även om det är sällsynt. Därför har jag ett script som först kollar om HTTP_CLIENT_IP exsisterar, efter det kör jag annars på REMOTE_ADDR och om inte remote_address funkar så kör jag på HTTP_X_FORWARD_FOR annars är det okänt

Nexus86Medlem sedan okt. 20022 683 inlägg
#6

K++ skrev:

Peeer Ja, det har hänt att remote_address _kan_ visa fel adress eller ingen adress allt, även om det är sällsynt. Därför har jag ett script som först kollar om HTTP_CLIENT_IP exsisterar, efter det kör jag annars på REMOTE_ADDR och om inte remote_address funkar så kör jag på HTTP_X_FORWARD_FOR annars är det okänt

Det blir ju fel nu också? :q

Denna funktion använder jag:

function remoteIP() {
	if (isValidIP($_SERVER['HTTP_CLIENT_IP'])) {
		return $_SERVER['HTTP_CLIENT_IP'];
	} elseif ($_SERVER['HTTP_X_FORWARDED_FOR']!="") {
		$forward = split(" ", str_replace(",","",$_SERVER['HTTP_X_FORWARDED_FOR']));
		foreach($forward as $value) {
			if (isValidIP($value)) return $value;
		}
	}
	return $_SERVER['REMOTE_ADDR'];
}

Jag stöter fortfarande på en som har samma ip som jag. isValidIP() är det inget fel på. Den validerar bara ip-adresser.

Genererad på 372 ms · cache AV · v20260730165559-full.f96bc7eb