Domanda

Come faccio a sapere l'indirizzo MAC del visitatore su hosting Linux (nginx)?

Da utente ethernet.

Grazie.

È stato utile?

Soluzione

Non è possibile ottenere che attraverso PHP.

protocollo reti vengono utilizzate in una pila. Nel fare HTTP le comunicazioni, il server web utilizza il protocollo HTTP, responsabile per le comunicazioni ad alta livello. Questo protocollo è implementato sulla cima del protocollo TCP (che porta corrente come collegamenti e numeri di porta), che a sua volta è implementato sulla sommità del protocollo IP (v4 o v6, che portano gli indirizzi IP per l'identificazione), che a sua sua volta è implementato sulla parte superiore del protocollo Ethernet.

Il protocollo Ethernet è quella che si avrebbe bisogno di lavorare. Ha sia l'indirizzo MAC di origine e l'indirizzo MAC di destinazione. Tuttavia, la maggior parte purtroppo, ci sono un sacco di problemi con esso.

In primo luogo, i dati che veicola è probabilmente di difficile accesso:. Dico "probabilmente" perché non ho mai imbattuto su come farlo

In secondo luogo, proprio come si ottiene l'indirizzo del router del vostro cliente quando essi accedono al sito, si ottiene router l'indirizzo MAC del vostro cliente a livello di Ethernet. A meno che non attraversano qualsiasi router (che accadrebbe solo se il server è stato direttamente collegato al computer client senza alcun router interferire, perché ci sono un sacco di router là fuori che i dati del relè ad altre parti di Internet), non ci è alcuna possibilità che l'indirizzo MAC che riceverete sarà del vostro cliente.

In terzo luogo, Apache non potrà mai provare ad accedere a quei dati. E dal momento che PHP è "sandbox" in un ambiente di rete Apache dà, non c'è modo è possibile avvolgere indietro al protocollo Ethernet.

Quindi, accedendo l'indirizzo MAC di un visitatore da un sito web, da PHP, non è possibile.

Modifica Sembra che hai preso la parte di PHP dalla tua domanda. Così, ovviamente, l'ultimo punto non regge più.

Altri suggerimenti

Non è possibile ottenere che con PHP non è inclusa nel http

La questione più generale è questo uno . Poiché tutti PHP ha a lavorare con (sto assumendo questo è il PHP in esecuzione sul server web, qui) è la richiesta HTTP, non sarà in grado di ottenere l'indirizzo MAC. Ciò richiede qualcosa in esecuzione sul lato del visitatore.

Questo può, o non può funzionare. So che funziona su client LAN, tuttavia per i clienti esterni, può essere corretto. Non eccessivamente conosco la mia rete, ma vale la pena un colpo giusto?

Se si esegue il comando arp -a su Windows o Linux, che stamperà i record ARP, che sarà poi possibile analizzare per il Mac.

Oltre a questo, per quanto ne so, apache (e per questo php) non si limita a dare indirizzi MAC nella sua env vars.

* Modificato:. Siamo spiacenti, che non funziona ... L'utilità migliore è arping però che sarà solo dare il mac del vostro router

Se si vuole fare questo, sarà necessario ai clienti di essere collegato direttamente al server, senza router tra ...

Tuttavia, se questo è il caso, allora il lavoro arping volontà ... non so di uno strumento migliore, ma sembra un po 'uno spreco di fare un ping (nella root) solo per un indirizzo MAC.

L'indirizzo MAC è visibile solo su per il provider di rete se sono corrette (il vostro ospite internet può vedere l'indirizzo MAC del router, per esempio), non credo che si può ottenere con php.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top