Автор Тема: Port forwarding на freebsd  (Прочетена 6757 пъти)

Warstomp

  • Напреднали
  • *****
  • Публикации: 344
  • Distribution: Debian, Ubuntu
    • Профил
Port forwarding на freebsd
« -: Dec 07, 2006, 19:26 »
Здравейте,
Имам един слаб компютър на който е инсталирано FreeBSD и се ползва за рутер. Едната му лан карта е с реално ip и през нея влиза интернета. Другата карта е gateway-я за вътрешната мрежа.
Проблема е следния: за да мога да направя игра на warcraft3 и други играчи да могат да влезат в нея, трябва да имам реален ip адрес и да се свързват свободно на порт 6112. Когато проверявам от кой адрес се свързвам ми показва реалния(дорук добре), но предполагам трябва някак да си пренасоча порта към моя компютър от който играя.
Ето какво пише на сайта им:
================================================
Warcraft III requires TCP ports 6112-6119 to be open in order to communicate with the Battle.net servers properly. If players have any firewalls, security software, or routers on the network, the ports may need to be forwarded to resolve any network security-related issues.
================================================

Ето какво имам в момента в /etc/rc.rc
Примерен код
/sbin/ipfw -f flush
/sbin/ipfw add 100 deny tcp from any to any 137,138,139
/sbin/ipfw add 101 deny udp from any to any 137,138,139
/sbin/ipfw add 200 divert 8668 all from any to any via rl0
/sbin/ipfw add 30000 allow ip from any to any

Нещо в този файл ли трябва да добавя. Ако Ви трябва и друга информация питайте. Благодаря.
Активен

0FF1

  • Напреднали
  • *****
  • Публикации: 127
    • Профил
Port forwarding на freebsd
« Отговор #1 -: Dec 07, 2006, 20:06 »
мисля че трябва да добавиш нещо подобно

/usr/sbin/natd -dynamic -redirect_port tcp 192.168.0.1:2200-2400
2200-2400 -interface tun0

но не съм много в час bsd

да каже някой разбирач ...



Активен

PEOPLE = S H I T!

Warstomp

  • Напреднали
  • *****
  • Публикации: 344
  • Distribution: Debian, Ubuntu
    • Профил
Port forwarding на freebsd
« Отговор #2 -: Dec 09, 2006, 09:54 »
Това не работи, пък и съм сигурен че някъде трябва да се напише въпросния 6112 tcp порт.
Активен

neonic

  • Напреднали
  • *****
  • Публикации: 104
    • Профил
Port forwarding на freebsd
« Отговор #3 -: Dec 09, 2006, 19:59 »
ipfw по принцип не прави такъв тип forwarding. За това можеш да използваш natd. За повече подробности redirect_port секцията от natd (8) manpage - a.

Командата която трябва да изпълниш трябва да изглежда нещо подобно на:

Примерен код
# natd -n $oif -redirect_port xxx.xxx.xxx.xxx:6112 6112


В rc.conf трябва да имаш нещо подобно на:

Примерен код
$ipfw pass tcp from any any to $oip 6112 in via $oif
  $ipfw pass tcp from any any to xxx.xxx.xxx.xxx 6112 out via $iif


Можеш също да опиташ следното:
Примерен код
/usr/sbin/natd -redirect_port tcp xxx.xxx.xxx.xxx:6111-6119 6111-6119 yyy.yyy.yyy.yyy:61111-6119
-interface xxX
, където:

xxx.xxx.xxx.xxx - вътрешният ip address на твоята машина.
yyy.yyy.yyy.yyy - външният ip address за връзка към интернет.
xxX - интерфейса за връзка към интернет.

В този пример, всички заявки към интервала от портове: 6111-6119, към твоя public (real) ip address, се препраща към същия интервал от портове на твоята машина.

Това би трябвало да ти  свърши работа.
Активен

Warstomp

  • Напреднали
  • *****
  • Публикации: 344
  • Distribution: Debian, Ubuntu
    • Профил
Port forwarding на freebsd
« Отговор #4 -: Dec 10, 2006, 10:59 »
Първата команда връща:
Примерен код
natd: unknown protocol 192.168.0.2:6112. Expected tcp or udp

A като добавя tcp ми връща:
Примерен код
# natd -n rl0 -redirect_port tcp 192.168.0.2:6112 6112
natd: Unable to bind divert socket.: Address already in use


Имам и малко въпроси: $oif и $iif са обозначени като rl0 и rl1 при мен и се виждат като напиша ifconfig. Нали така или трябва да ги оставя, както ти си ми ги написал и да сменя само xxX със rl0? A $oip e всъщност yyy.yyy.yyy.yyy?

Също така как мога да проверявам дали е станало, а не всеки път да влизам в играта и да чакам някой да влезе при мен? Благодаря.



Активен

smelkomar

  • Напреднали
  • *****
  • Публикации: 429
    • Профил
Port forwarding на freebsd
« Отговор #5 -: Dec 10, 2006, 11:30 »
/etc/ipnat.conf:
rdr rl0 0/0 port 6112 -> 192.168.0.2 port 6112 tcp

rdr rl0 0/0 port 6112 -> 192.168.0.2 port 6112 udp

/etc/ipf.rules:
pass in quick on rl0 proto tcp from any to 192.168.0.2/32 port = 6112 keep state

pass in quick on rl0 proto udp from any to 192.168.0.2/32 port = 6112 keep state



Активен

Ползвам т'ва, к'вот ме кефи

Warstomp

  • Напреднали
  • *****
  • Публикации: 344
  • Distribution: Debian, Ubuntu
    • Профил
Port forwarding на freebsd
« Отговор #6 -: Dec 10, 2006, 12:34 »
Цитат (smelkomar @ Дек. 10 2006,12:30)
/etc/ipnat.conf:
rdr rl0 0/0 port 6112 -> 192.168.0.2 port 6112 tcp

rdr rl0 0/0 port 6112 -> 192.168.0.2 port 6112 udp

/etc/ipf.rules:
pass in quick on rl0 proto tcp from any to 192.168.0.2/32 port = 6112 keep state

pass in quick on rl0 proto udp from any to 192.168.0.2/32 port = 6112 keep state

Нямам такива файлове. Забравих да кажа - версия на freebsd 4.5.
Активен

neonic

  • Напреднали
  • *****
  • Публикации: 104
    • Профил
Port forwarding на freebsd
« Отговор #7 -: Dec 10, 2006, 16:29 »
Цитат (MaX_Ass @ Дек. 10 2006,11:59)
Първата команда връща:
Примерен код
natd: unknown protocol 192.168.0.2:6112. Expected tcp or udp

A като добавя tcp ми връща:
Примерен код
# natd -n rl0 -redirect_port tcp 192.168.0.2:6112 6112
natd: Unable to bind divert socket.: Address already in use


Имам и малко въпроси: $oif и $iif са обозначени като rl0 и rl1 при мен и се виждат като напиша ifconfig. Нали така или трябва да ги оставя, както ти си ми ги написал и да сменя само xxX със rl0? A $oip e всъщност yyy.yyy.yyy.yyy?

Също така как мога да проверявам дали е станало, а не всеки път да влизам в играта и да чакам някой да влезе при мен? Благодаря.

Общо взето да. Би трябвало така да ги оставиш. А xxX съм го написал така, защото не знам при теб кой interface използваш за връзка към интернет.

Ами като за начало опитай, с пренасочване и на други портове.
Примерно порт 8080 на рутера, го пренасочи към порт 8080 на твоята машина и виж дали си успял.
Активен

Warstomp

  • Напреднали
  • *****
  • Публикации: 344
  • Distribution: Debian, Ubuntu
    • Профил
Port forwarding на freebsd
« Отговор #8 -: Dec 10, 2006, 16:38 »
Оправих се. Благодаря нямаше да се справя сам.
Проблема беше че на мен командата ми е в /sbin/, а не в /usr/sbin.  '<img'>

просто добавих този ред в /etc/rc.rc
Примерен код
/sbin/natd -n rl0 -redirect_port tcp 192.168.0.2:6112 6112




Активен

IID_IUnknown

  • Напреднали
  • *****
  • Публикации: 18
    • Профил
Port forwarding на freebsd
« Отговор #9 -: Dec 12, 2006, 09:50 »
Цитат (MaX_Ass @ Дек. 10 2006,17:38)
Оправих се. Благодаря нямаше да се справя сам.
Проблема беше че на мен командата ми е в /sbin/, а не в /usr/sbin.  '<img'>

просто добавих този ред в /etc/rc.rc
Примерен код
/sbin/natd -n rl0 -redirect_port tcp 192.168.0.2:6112 6112

Възможно най грешното решение, така при следващия ъпдейт 80% ще проспиш merge на този файл и после ще се питаш къде е пробема ...

в /etc/rc.conf добавяш:
natd_enable="YES"
natd_interface="rl0"
natd_flags="-redirect_port tcp 192.168.0.2:6112 6112"

и с това приключваш цялата сага.
Активен

Warstomp

  • Напреднали
  • *****
  • Публикации: 344
  • Distribution: Debian, Ubuntu
    • Профил
Port forwarding на freebsd
« Отговор #10 -: Dec 12, 2006, 14:15 »
Аз и без това не се наемам да ъпдейтвам. Така ми стои от 4 години с тази версия. Аз съм на принципа - Когато нещо работи не го бутай. Все пак ще опитам и твоя вариант. Благодаря.
Активен

IID_IUnknown

  • Напреднали
  • *****
  • Публикации: 18
    • Профил
Port forwarding на freebsd
« Отговор #11 -: Dec 13, 2006, 14:53 »
Цитат (MaX_Ass @ Дек. 12 2006,15:15)
Аз и без това не се наемам да ъпдейтвам. Така ми стои от 4 години с тази версия. Аз съм на принципа - Когато нещо работи не го бутай. Все пак ще опитам и твоя вариант. Благодаря.

за тези 4 години излезнаха сериозни дупки къде ли не ...
С тва изказване тук смятай, че сума ти "хакерчета" ще почнат да ти се пробват върху машината ;-))
Иначе и аз съм съгласен, работи ли - не го пипай ;-) но не ме кефи някак си пък и да имам дупки в сигурността по трасето ...
Активен

Warstomp

  • Напреднали
  • *****
  • Публикации: 344
  • Distribution: Debian, Ubuntu
    • Профил
Port forwarding на freebsd
« Отговор #12 -: Dec 14, 2006, 09:33 »
Цитат (IID_IUnknown @ Дек. 13 2006,15:53)
Цитат (MaX_Ass @ Дек. 12 2006,15:15)
Аз и без това не се наемам да ъпдейтвам. Така ми стои от 4 години с тази версия. Аз съм на принципа - Когато нещо работи не го бутай. Все пак ще опитам и твоя вариант. Благодаря.

за тези 4 години излезнаха сериозни дупки къде ли не ...
С тва изказване тук смятай, че сума ти "хакерчета" ще почнат да ти се пробват върху машината ;-))
Иначе и аз съм съгласен, работи ли - не го пипай ;-) но не ме кефи някак си пък и да имам дупки в сигурността по трасето ...

Ще ми накривят шапката. Щом им се занимава...
Активен

batence

  • Участници
  • ***
  • Публикации: 4
  • Distribution: FreeBSD
  • Window Manager: Microsoft Windows Vista
    • Профил
    • WWW
Re: Port forwarding на freebsd
« Отговор #13 -: Feb 24, 2009, 06:10 »
Аз съм в същата ситуация, просто искам да изкарам сървъра пред на брат ми компютъра, който играе много Уар Крафт. Но уви незнам как да направя така, че да вижда локални игри. Предполагам това е нещо обратно на forwarding - backwarding  ???
« Последна редакция: Feb 24, 2009, 06:15 от batence »
Активен

Подобни теми
Заглавие Започната от Отговора Прегледи Последна публикация
port forwarding
Настройка на програми
coldy 1 3726 Последна публикация Nov 23, 2002, 11:15
от coldy
Port forwarding с DNAT (как?)
Хардуерни и софтуерни проблеми
OMA 15 5941 Последна публикация Sep 03, 2004, 11:25
от ntenev
hlds port forwarding
Общ форум
ronalniko 1 2431 Последна публикация Aug 29, 2009, 12:50
от ludsic
Port to port redirection FreeBSD
Настройки на софтуер
Neoromantic 0 1909 Последна публикация Oct 28, 2009, 16:24
от Neoromantic
Router, Port Forwarding и Apache сървър
Настройка на програми
mahmahani 6 3111 Последна публикация Dec 17, 2013, 12:03
от mkkostov