FreeBSD 6,7 and p2p?

Настройка сетевых служб, маршрутизации, фаерволлов. Проблемы с сетевым оборудованием.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
Laa
ст. лейтенант
Сообщения: 1032
Зарегистрирован: 2008-02-21 18:25:33
Откуда: Украина, Россия

FreeBSD 6,7 and p2p?

Непрочитанное сообщение Laa » 2008-07-01 0:13:06

Здравствуйте.
Поиском не нашел ответа на свой вопрос, поэтому спрашиваю.

Есть у меня в меру крупная локалка.
В ней клиенты получают динамические адреса из одного блока 10.x.x.x (это нельзя изменить) и хотят пользоваться p2p сетями. Чтобы все было ок, нужно чтобы был портмаппинг портов внешнего интернет-адреса на внутренние адреса этого блока. Пока решил задачу так -- выделил диапазон портов которые редиректятся на адреса из блока в этом же диапазоне. То есть порт 55555 внешнего адреса безоговорочно редиректится на 10.156.9.2:55555, и так по всему диапазону адресов из блока. Клиент, видя свой адрес, вычисляет себе порт по указанной схеме и указывает этот порт в своих p2p-клиентах. После этого клиентские emule/torrent-ы начинают подхватывать и входящие коннекты.

Внимание, вопросы!
1. Пока прописал на FreeBSD 6 в natd.conf почти пол-тыщи строк такого порт-маппинга, пока все работает как надо. Где предел? Как предел будет проявляться? Сеть имеет перспективы дальнейшего роста.
2. Если весь этот бардак прописать в настройках kernel-level NAT на FreeBSD 7, где будет предел? Сколько можно такого бардака вписать там?
3. Может как-то красивее можно сделать? Как?

Заранее спасибо. :drinks:
exim: помните, что выдавая deny, вы можете недоставить ваше же письмо, зарубив sender-verify удаленного MTA к вашему MTA!!!

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

paradox_
проходил мимо

Re: FreeBSD 6,7 and p2p?

Непрочитанное сообщение paradox_ » 2008-07-01 0:27:16

думаеться мне для таких схем должен быть что то типа p2p-proxy
думаю вы поняли

что бы к примеру клиенты указывали ваш серер как вышестоящий проксик для P2p
а сервак уже будет делать запросы в мир
и возращать их клиентам

незнаю
нужно бы в нете поискать
либо подождать что глас народа еще посоветует

Аватара пользователя
zingel
beastie
Сообщения: 6204
Зарегистрирован: 2007-10-30 3:56:49
Откуда: Moscow
Контактная информация:

Re: FreeBSD 6,7 and p2p?

Непрочитанное сообщение zingel » 2008-07-01 12:24:00

ответы:

1) Предел портов, открытых портов в состоянии listen определяет переменная kern.ipc.maxsockets и две переменные net.inet.ip.portrange.first + net.inet.ip.portrange.last, соответственно предел открытых портов - 65536
2)Для ната эти три переменные полностью работают, но могут быть глюки при большом количестве открытых портов, глюки с TTL
3)Можно сделать красиво, заюзать gre-тунели или заюзать DVMRP-инкапсюляцию и бродкастить эти порты на широковещательный домен всей сети, оба варианта будут хорошо работать при пользовании кошек, есть вариант проще - использовать L2 ip routing, это есть в любом коммутаторе второго уровня, если сетка гигабитная, связка будет (я пользую) dl-3010G + DGL4100/сегмент
Z301171463546 - можно пожертвовать мне денег

Аватара пользователя
Laa
ст. лейтенант
Сообщения: 1032
Зарегистрирован: 2008-02-21 18:25:33
Откуда: Украина, Россия

Re: FreeBSD 6,7 and p2p?

Непрочитанное сообщение Laa » 2008-07-02 8:53:03

zingel писал(а):ответы:

1) Предел портов, открытых портов в состоянии listen определяет переменная kern.ipc.maxsockets и две переменные net.inet.ip.portrange.first + net.inet.ip.portrange.last, соответственно предел открытых портов - 65536
2)Для ната эти три переменные полностью работают, но могут быть глюки при большом количестве открытых портов, глюки с TTL
3)Можно сделать красиво, заюзать gre-тунели или заюзать DVMRP-инкапсюляцию и бродкастить эти порты на широковещательный домен всей сети, оба варианта будут хорошо работать при пользовании кошек, есть вариант проще - использовать L2 ip routing, это есть в любом коммутаторе второго уровня, если сетка гигабитная, связка будет (я пользую) dl-3010G + DGL4100/сегмент
Спасибо за ответ!

По п.1 -- это понятно и я знаю по портам. А вот то что конфиг natd.conf становится размером в несколько Кб, это меня начинает пугать :oops:
По п.2 -- я вот и задумываюсь о более лучшем решении...
По п.3 -- спасибо, почитаю, поразмышляю.
exim: помните, что выдавая deny, вы можете недоставить ваше же письмо, зарубив sender-verify удаленного MTA к вашему MTA!!!