Как заставить OS X отправлять ЛОКАЛЬНЫЙ IP-адрес в заголовках запроса www?
Мне нужно иметь возможность отправлять локальный IP-адрес компьютера вместе с заголовками при отправке запросов на веб-сайт. Подобно тому, как вы можете получить _SERVER["REMOTE_ADDR"]
в php, но локальный ip (например, 192.168.100.1). Это будет интрасеть, чтобы можно было контролировать среду. На компьютер можно установить все, что угодно.
Это будет на компьютере Mac OS X. Надеясь как на Safari, так и на Firefox. Но был бы открыт для использования одного.
Кто-нибудь знает возможно ли это? Спасибо.
1 ответ
Я предполагаю, что это требует некоторого добавления заголовка X-Forwarded-For, как это сделали бы некоторые прокси-серверы. Но, хотя и не является официальным стандартом, мне интересно, разрешает ли он IP-адреса из частного диапазона.
Если вы можете заставить свои браузеры использовать прокси http://glimmerblocker.org/, то вы можете добавить такие заголовки с помощью правила запроса на изменение:
- Добавить новое правило (необязательно, сначала добавьте новый фильтр для хранения правила)
- На панели типов правил установите для параметра " Действия" значение " Изменить запрос".
На панели запроса добавьте:
gb.request.headers ['X-Forwarded-For'] = '192.168.100.1';
Или, чтобы использовать фактический локальный IP-адрес, я предполагаю:
var myIp; для (var k в gb.network.interfaces){ var x = gb.network.interfaces[k]; если (!x.IPv4){ Продолжить; } for(var i в x.IPv4.addr){ var ip = x.IPv4.addr[i]; // Интерфейс может иметь несколько IP-адресов, но предположим, // у него только один адрес, который не является локальным: if(ip == "127.0.0.1"){ Продолжить; } myIp = ip; перерыв; } } gb.request.headers['X-Forwarded-For'] = myIp;
Необязательно, примените правило только к определенным хостам.
(Мне также очень любопытно, почему этот вопрос...)