DC++ vs NAT

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модераторы: SLEDopit, Модераторы разделов

megagrizly
Сообщения: 20
ОС: Linux

DC++ vs NAT

Сообщение megagrizly »

На шлюзе три eth: eth0 - ADSL ppp0, eth1 - городская LAN (192.168.39.65), eth2 - дамашняя сеть (192.168.0.1). В городской лан имеется dc++ хаб 80.237.8.56. Захожу на него из домашней сети с машины 192.168.0.2 (клиент linuxdcpp), но ничего не могу скачать: при попытке browse files либо таймаут, либо бесконечный connecting. Клиент настраивал так: Connection: Active, External WAN/IP: 192.168.39.65, TCP: 10100, UDP: 10100, TLS: 10100.

Шлюз настроен так:

Код: Выделить всё

#Forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward

#Чистим все
iptables -F
iptables -t nat -F
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP

#Интерфейсы
export ADSL=ppp0
export PUBLAN=eth1
export MYLAN=eth2

#NAT
iptables -A FORWARD -i ${MYLAN} -s 192.168.0.0/255.255.0.0 -j ACCEPT
iptables -A FORWARD -i ${ADSL} -d 192.168.0.0/255.255.0.0 -j ACCEPT
iptables -A FORWARD -i ${PUBLAN} -d 192.168.0.0/255.255.0.0 -j ACCEPT
iptables -t nat -A POSTROUTING -o ${ADSL} -j MASQUERADE
iptables -t nat -A POSTROUTING -o ${PUBLAN} -j MASQUERADE

#Роуты в городскую LAN
route add -net 80.237.3.0 netmask 255.255.255.0 gw 192.168.39.1
route add -net 80.237.8.0 netmask 255.255.255.0 gw 192.168.39.1
route add -net 80.237.75.0 netmask 255.255.255.0 gw 192.168.39.1
route add -net 10.0.0.0 netmask 255.0.0.0 gw 192.168.39.1

#Открываем порты для DC++
iptables -t nat -A PREROUTING -p TCP -i 192.168.39.1 --dport 10100 -j DNAT --to-destination 192.168.0.2
iptables -t nat -A PREROUTING -p UDP -i 192.168.39.1 --dport 10100 -j DNAT --to-destination 192.168.0.2
Спасибо сказали:
arch
Сообщения: 74
ОС: freebsd/arch

Re: DC++ vs NAT

Сообщение arch »

Connection: Active

Passive.
Спасибо сказали:
megagrizly
Сообщения: 20
ОС: Linux

Re: DC++ vs NAT

Сообщение megagrizly »

arch писал(а):
16.11.2008 20:40
Connection: Active

Passive.

Пссива нет :) есть Firewall with manual port forward. Пробовал его - то же самое.

Раньше на активе работало, только правил iptables тех я не сохранил.
Спасибо сказали:
pelmen
Сообщения: 1268
ОС: debian

Re: DC++ vs NAT

Сообщение pelmen »

Для актива надо перебрасывать порты с шлюза внутрь
Спасибо сказали:
Аватара пользователя
McLeod095
Сообщения: 477
ОС: Люблю слаку

Re: DC++ vs NAT

Сообщение McLeod095 »

megagrizly писал(а):
16.11.2008 20:59
Пссива нет :) есть Firewall with manual port forward.

Обратить внимание на эту строку и попробовать перевести на русский.
pelmen сказал правильно.
А уж если не знаете как перебрасывать порты то читать man iptables на предмет DNAT
"Work PC" E6750/2GB/Asus P5B Deluxe/2x250GB/6600GT 128/Slackware Current (Win 2003 in VmWare)
New Work: E6400/3GB/Arch
Home Book: Asus W6k00A/Arch, Asus 701/Arch
Спасибо сказали:
Аватара пользователя
Frank
Сообщения: 1059
ОС: Ubuntu, Debian

Re: DC++ vs NAT

Сообщение Frank »

iptables -t nat -A PREROUTING -p TCP -i 192.168.39.1 --dport 10100 -j DNAT --to-destination 192.168.0.2

Если я правильно читаю правило, то на русском оно звучит так:
"Если пришёл пакет на 192.168.39.1 по порту 10100, то установить конечное назначение на 192.168.0.2 и отослать"
Соответственно, DC++ клиент надо уведомить (в настройках), что Firewall with manual port forward использует порт 10100. Тогда он при коннекте на хаб уведомит его, что все желающие скачать что-либо должны стучаться на порт 10100, а не какой попало.
Изображение
Спасибо сказали:
Аватара пользователя
pilson66
Сообщения: 59
ОС: Debian Squeeze

Re: DC++ vs NAT

Сообщение pilson66 »

Frank писал(а):
19.11.2008 08:23
iptables -t nat -A PREROUTING -p TCP -i 192.168.39.1 --dport 10100 -j DNAT --to-destination 192.168.0.2

Если я правильно читаю правило, то на русском оно звучит так:
"Если пришёл пакет на 192.168.39.1 по порту 10100, то установить конечное назначение на 192.168.0.2 и отослать"
Соответственно, DC++ клиент надо уведомить (в настройках), что Firewall with manual port forward использует порт 10100. Тогда он при коннекте на хаб уведомит его, что все желающие скачать что-либо должны стучаться на порт 10100, а не какой попало.


если у тебя eth1 имеет адрес 192.168.39.65, то причем тут 39.1 тогда?
если я правильно понял и ты хочешь принимать из городской локалки подключения на свой комп - то правило должно выглядеть так:

Код: Выделить всё

iptables -t nat -A PREROUTING -p tcp -i eth1 -d 192.168.39.65 --dport 10100 -j DNAT --to-destination 192.168.0.2

и UDP, если он тоже используется

Код: Выделить всё

iptables -t nat -A PREROUTING -p udp -i eth1 -d 192.168.39.65 --dport 10100 -j DNAT --to-destination 192.168.0.2

ну и чтобы самому добраться через eth1 до хаба:

Код: Выделить всё

iptables -t nat -A POSTROUTING -s 192.168.0.2 -o eth1 -j SNAT --to-source 192.168.39.65
Спасибо сказали:
Аватара пользователя
Olden Gremlin
Сообщения: 365
Статус: RAP22-RIPE
ОС: Debian GNU/Linux Wheezy

Re: DC++ vs NAT

Сообщение Olden Gremlin »

megagrizly писал(а):
16.11.2008 19:52
На шлюзе три eth: eth0 - ADSL ppp0, eth1 - городская LAN (192.168.39.65), eth2 - дамашняя сеть (192.168.0.1). В городской лан имеется dc++ хаб 80.237.8.56. Захожу на него из домашней сети с машины 192.168.0.2 (клиент linuxdcpp), но ничего не могу скачать: при попытке browse files либо таймаут, либо бесконечный connecting. Клиент настраивал так: Connection: Active, External WAN/IP: 192.168.39.65, TCP: 10100, UDP: 10100, TLS: 10100.
Ага... И ещё, помимо приведённого другими участниками PREROUTING'а... А покажите-ка ip r, а то сдаётся мне, что dc++ будет желать видеть Ваш хость только через городскую сеть и, ествественно, отфутболивать при попытке достучаться до него из Интернета...
«Когда у общества нет цветовой дифференциации штанов — то нет цели!»
nic-hdl: RAP22-RIPE
Спасибо сказали: