Автор Тема: Сокеты и ip  (Прочитано 6530 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Kwazar

  • Философ
  • Постоялец
  • ***
  • Сообщений: 201
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.uhuhu.ru/
Сокеты и ip
« : 23 Мая 2003, 11:17:42 »
Как включить в http заголовок запроса ip.
HTTP заголовок формуриеться посредством сокетов:


#!/usr/bin/perl
use Socket;
$AF_INET=2;
$SOCK_STREAM=1;
$protocol=(getprotobyname(\'tcp\'))[2];
$end="\\015\\012";
$site="localhost";# Адрес хоста без http://
$port=80;
$addr=(gethostbyname($site))[4];
$addrs=pack (\'S n a4 x8\', $AF_INET, $port, $addr);
$cur=\'/a.jpg\';#имя файла на хосте Например /cgi-bin/cookie.cgi


{print "Content-Type: text/html\\n\\n";

if (!(socket(LOAD,$AF_INET,SOCK_STREAM,$protocol))){

print "Невозможно создать сокет!"; exit;}

if (!(connect(LOAD, $addrs))){print "Невозможно соединиться!"; exit;}

select(LOAD);
$|=1;
select(STDOUT);

print LOAD "GET $cur HTTP/1.0$end";
print LOAD "Content-Type: application/x-www-form-urlencoded$end";
print LOAD "Accept: text/html$end";
print LOAD "Accept: image/jpeg$end";
print LOAD "User-Agent: Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)$end";
print LOAD "Accept: image/gif$end";
print LOAD "Accept: image/x-xbitmap$end";
print LOAD "Referer: http://www.host/$end";
print LOAD "Accept: image/pjpeg$end";
print LOAD "Cookie: nik=uuu; passwd=e789201b865999990c17bf5bc9c15$end";
print LOAD "Host: $site$end";
print LOAD "Authorization: Basic $encoded$end";
print LOAD "$end$end";
@str=;


print @str;


close (LOAD);
}
С уважением Сергей

Оффлайн Kwazar

  • Философ
  • Постоялец
  • ***
  • Сообщений: 201
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.uhuhu.ru/
Сокеты и ip
« Ответ #1 : 23 Мая 2003, 11:19:01 »
Как ip выглядет в http заголовке?
С уважением Сергей

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
Сокеты и ip
« Ответ #2 : 23 Мая 2003, 13:25:11 »
Читать rfc2616
Hint: Посмотри в perldoc IO::Socket;
The documentations is your friend

Оффлайн Kwazar

  • Философ
  • Постоялец
  • ***
  • Сообщений: 201
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.uhuhu.ru/
Сокеты и ip
« Ответ #3 : 23 Мая 2003, 14:16:07 »
NeoNox в перлдоке нету.
С уважением Сергей

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
Сокеты и ip
« Ответ #4 : 23 Мая 2003, 14:29:52 »
perl -MCPAN -e shell;
cpan> install  

http://www.perldoc.com/perl5.8.0/lib/IO/Socket.html
The documentations is your friend

Оффлайн Kwazar

  • Философ
  • Постоялец
  • ***
  • Сообщений: 201
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.uhuhu.ru/
Сокеты и ip
« Ответ #5 : 23 Мая 2003, 15:25:34 »
NeoNox, спасибо
С уважением Сергей

Оффлайн Kwazar

  • Философ
  • Постоялец
  • ***
  • Сообщений: 201
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.uhuhu.ru/
Сокеты и ip
« Ответ #6 : 23 Мая 2003, 15:35:58 »
Но там тоже нету ничего.
В какой переменной окружения храниться Ip в HTTP заголовке?
С уважением Сергей

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
Сокеты и ip
« Ответ #7 : 23 Мая 2003, 15:45:22 »
The documentations is your friend

Оффлайн Kwazar

  • Философ
  • Постоялец
  • ***
  • Сообщений: 201
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.uhuhu.ru/
Сокеты и ip
« Ответ #8 : 23 Мая 2003, 15:54:40 »
NeoNox, дошел, но мне то, но не совсем в таком виде нужно...
Еще раз спасибо за уделение внимания моей кромной персоне
С уважением Сергей

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
Сокеты и ip
« Ответ #9 : 23 Мая 2003, 16:21:45 »
Ну я тогда не понял вопрос.
Чей IP тебе нужен, клиента или сервера или еще какой?
The documentations is your friend

Оффлайн Kwazar

  • Философ
  • Постоялец
  • ***
  • Сообщений: 201
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.uhuhu.ru/
Сокеты и ip
« Ответ #10 : 23 Мая 2003, 16:49:32 »
NeoNox, см. пример.
там подставляется все, кроме Ip. А нужно с ним...
С уважением Сергей

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
Сокеты и ip
« Ответ #11 : 23 Мая 2003, 16:56:09 »
Kwazar AFAIK сервер сам возьмет твой IP без твоего указания ;)
The documentations is your friend

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
Сокеты и ip
« Ответ #12 : 23 Мая 2003, 18:04:47 »
может я чего-то и не понял но в HTTP-заголовках IP не указывается. Нет этого в RFC (да и не нужно). IP определяется еще во время соединения между клиентом и сервером, до того как начнется работа по HTTP-протоколу.
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн Kwazar

  • Философ
  • Постоялец
  • ***
  • Сообщений: 201
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.uhuhu.ru/
Сокеты и ip
« Ответ #13 : 24 Мая 2003, 13:33:13 »
NeoNox, Макс, такгда как скрипты статистики выдирают ip? Где-то он должен же передаваться... И если сервер виртуальный, и скрипт, который определяет ip клиента, написан на Perl, к примеру и берет его из переменной окружения, то как его подменить?
С уважением Сергей

Оффлайн Alone

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 182
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Сокеты и ip
« Ответ #14 : 24 Мая 2003, 14:45:18 »
Цитировать
Kwazar:
такгда как скрипты статистики выдирают ip

Из переменных окружения ;)
Цитировать
Kwazar:
то как его подменить

ооо целая наука... сведенная(в основном) к высоко(full) ананимным проксям и соксам :)

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28