mlevel Опубликовано 25 августа, 2009 Может и вопрос совсем глупый, но никак не могу найти решение. Сильно не ругайте. Есть маршртизатор на базе FreeBSD(локальний интерфейс eth0, интернет eth1) с IPFW. Есть локальний ІР - адрес (192.168.0.5), нужно его переадресовать с любого введенного ним сайта например на страничку google.com. Заранее спасибо! Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
hiller Опубликовано 25 августа, 2009 Тогда нужно создать виртуальный хост в апаче, привязать его к IP/PORT, на нем разместить файл с редиректом или mod_rewrite. Сделать в IPFW DNAT, который будет перенаправлять на ваш хост и порт где редирект. Связано с тем, что большинство сайтов являются NamedVirtualHost, виртуальными хостами, к которым нужно обращаться не просто на их IP/PORT, но и передавать в URL имя запрашиваемого сайта, иначе ответит default vhost. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
mlevel Опубликовано 25 августа, 2009 (изменено) А если етот сайт находиться в моей локальной сети (хотя и с реальним ІР)? П.С. Думал както можно с помощю divert nat. Изменено 25 августа, 2009 пользователем mlevel Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
TiFFolk Опубликовано 25 августа, 2009 (изменено) 1. Поднимаешь например с помощью inetd ридарект-вебсервер =) inetd.conf http stream tcp nowait root /bin/cat cat /root/redirect.html /root/redirect.html HTTP/1.1 307 Temporary redirect Location: http://google.com И потом с поомщью IPFW перебрасываешь все запросы с 80 порта на этот комп, на 80 порт. С клиентскими браузерами работает со всеми. Перебрасывал я вроде с помощью forward Изменено 25 августа, 2009 пользователем TiFFolk Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
GateKeeper Опубликовано 26 августа, 2009 маршртизатор на базе FreeBSD(локальний интерфейс eth0, интернет eth1)Точно на базе фряхи? Или балуемся ifconfig блабла name ethX ? Сайты на нестандартном порту как заблокировали? Внешние прокси как заблокировали? После этих вопросов: весь оставшийся веб-трафик редиректим на апач в джейле, дефолтный vhost которого выполняет безусловный mod_proxy на гугль. Об этом чуть выше писали уже. Ну, или не апач, а nginx какой - всё полегче будет. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Giga-Byte Опубликовано 26 августа, 2009 1. Поднимаешь например с помощью inetd ридарект-вебсервер =) inetd.conf http stream tcp nowait root /bin/cat cat /root/redirect.html /root/redirect.html HTTP/1.1 307 Temporary redirect Location: http://google.com интересная реализация. надо попробовать. я использую <META HTTP-EQUIV="REFRESH" CONTENT="0;URL=billing.lan"> заблокированым абонентам - перебрасывает на локальную страничку биллинга с сообщением. (ну ещё был наваян простенький tcp сервер на Си, который отдаёт этот тэг) только заметил неприятный баг - некоторые браузеры запоминают, и пока браузер не перезапустишь будет срабатывать редирект Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
mlevel Опубликовано 26 августа, 2009 1. Поднимаешь например с помощью inetd ридарект-вебсервер =) inetd.conf http stream tcp nowait root /bin/cat cat /root/redirect.html /root/redirect.html HTTP/1.1 307 Temporary redirect Location: http://google.com И потом с поомщью IPFW перебрасываешь все запросы с 80 порта на этот комп, на 80 порт. С клиентскими браузерами работает со всеми. Перебрасывал я вроде с помощью forward Сделал так и тишина. Даже когда ввожу ІР сервера где поднят редирект(inetd) то ничего не происходит! Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
t0ly Опубликовано 27 августа, 2009 у меня работает. /etc/rc.d/inetd restart делал? в /etc/services нужную строчку добавил? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
mlevel Опубликовано 27 августа, 2009 в /etc/services http 80/tcp www www-http #World Wide Web HTTP http 80/udp www www-http #World Wide Web HTTP http-mgmt 280/tcp http-mgmt 280/udp https 443/tcp https 443/udp gss-http 488/tcp gss-http 488/udp http-alt 591/tcp #FileMaker, Inc. - HTTP Alternate (see Port 80) http-alt 591/udp #FileMaker, Inc. - HTTP Alternate (see Port 80) http-rpc-epmap 593/tcp #HTTP RPC Ep Map http-rpc-epmap 593/udp #HTTP RPC Ep Map multiling-http 777/tcp #Multiling HTTP multiling-http 777/udp #Multiling HTTP netconfsoaphttp 832/tcp #NETCONF for SOAP over HTTPS netconfsoaphttp 832/udp #NETCONF for SOAP over HTTPS Рестарт делал... Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...