настройка шлюза

Автор kima, 26 Мая 2009, 14:17

« предыдущая тема - следующая тема »

0 Пользователей и 1 Гость просматривают эту тему.

kima

помогите пожалуйста настроить шлюз:
надо чтобы было:
ASP Linux 11 с двумя сетевыми адаптерами
LAN eth0->192.168.2.39/24
WAN eth1->192.168.1.125(DHCP)  отсюда идет на шлюз 192.168.1.1 где стоит сквид

текуший:
шлюз на pfSense(FreeBSD)
LAN eth0->192.168.2.1/24
WAN eth1->192.168.1.125(DHCP)  все работает

проблема при тестировании сделал WAN eth1->192.168.1.2 не пингуется Windows машина ->192.168.1.1, хотя наоборот с винды пингуется Линух

Vicpo


kima

192.168.2.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth1
169.254.0.0     0.0.0.0         255.255.0.0     U     0      0        0 eth1
0.0.0.0         192.168.2.1     0.0.0.0         UG    0      0        0 eth0

kima

читал на форуме показалось что это пустиковое дело:
1 изменить /etc/sysctrl.cof -> ...ip_forward=1
2 route add default gw 192.168.1.1 # это адресс центрального шлюза
проблема лишь в том что не пингуется 192.168.1.1?

Vicpo

[quote name=\'kima\' post=\'4932\' date=\'26.5.2009, 14:30\']192.168.2.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth1
169.254.0.0     0.0.0.0         255.255.0.0     U     0      0        0 eth1
0.0.0.0         192.168.2.1     0.0.0.0         UG    0      0        0 eth0[/quote]
0.0.0.0         192.168.2.1     0.0.0.0         UG    0      0        0 eth0 вот дефолтный шлюз так что вот

kima

26 Мая 2009, 15:59 #5 Последнее редактирование: 26 Мая 2009, 16:10 от kima
извините забыл сказать что это Фряха на 192.168.2.1 работаюшая паралельно с Линухсом.
вобшем получается так что при вытащив кабель из Фряхи и вставив его в Линух делаю:
1 /sbin/ifconfig eth1 hw ether XX:X..... (привязка IP по MAC адресам)
2 route del default gw 192.168.2.1
3 route add default gw 192.168.1.1
4 cat /proc/sys/net/ipv4/ip_forward =>1
5 на локале ставлю шлюз на 192.168.2.39

и с любом локального компа нет пинга 192.168.1.1(соответственно нету инета)
кажется что проблема в том что с пакеты поступающие на LAN карту не попадают на WAN

как я понимаю структура маршрута такая: 192.168.2.0->192.168.2.39->192.168.1.125->192.168.1.1->Internet
ах да еще с локалки пинг идет на обе карты Линух машины т.е. бриджинг выпадает из круга подозреваемых?

Vicpo

Цитировать2 route del default gw 192.168.2.1
3 route add default gw 192.168.1.1
зачем два шлюза по умолчанию?
по идее надо просто добавить основной шлюз - модем
и маршрут для сети 192.168.2.0.24
route add -net 192.68.2.0 netmask 255.255.255.0 eth0 примерно так

kima

26 Мая 2009, 16:29 #7 Последнее редактирование: 26 Мая 2009, 16:29 от kima
[quote name=\'Vicpo\' post=\'4936\' date=\'26.5.2009, 10:17\']зачем два шлюза по умолчанию?[/quote]

просто нет возможности для теста вот и приходится на 1-2минуты вытаскивать кабель и заменять старый gw на новый

[root@server etc]# /sbin/route add -net 192.168.2.0 netmask 255.255.255.0 eth0
SIOCADDRT: Файл существует

Vicpo


kima

[codebox]Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.2.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0
192.168.2.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth1
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth1
169.254.0.0     0.0.0.0         255.255.0.0     U     0      0        0 eth1
0.0.0.0         192.168.2.1     0.0.0.0         UG    0      0        0 eth0
[/codebox]
то что по две, это после
route add -net 192.168.1.0 netmask 255.255.255.0 dev eth1
route add -net 192.168.2.0 netmask 255.255.255.0 dev eth0

[codebox][root@server etc]# /sbin/ip route list
192.168.2.0/24 dev eth0  scope link
192.168.2.0/24 dev eth0  proto kernel  scope link  src 192.168.2.39
192.168.1.0/24 dev eth1  scope link
192.168.1.0/24 dev eth1  proto kernel  scope link  src 192.168.1.125
169.254.0.0/16 dev eth1  scope link
default via 192.168.2.1 dev eth0
default via 192.168.1.1 dev eth1
[/codebox]

Vicpo

route del default gw 192.168.2.1

route add default gw 192.168.1.1
Смени дефолтный шлюз

kima

так это из-за того что кабель обратно подключил к Фряхе(иначе в кабинете не будет инета)
а вывод команды ip route list показывает что есть и вторая gw и это действительно так: когда подключаю кабель к Линухсу вместо 192.168.2.1 пишется 192.168.1.1
к тому же заметил что маршрутизация с Линухса идет отлично(Инет работает) дело в том что локальные компы не видят 192.168.1.1(Главный шлюз) мне казалось что из-за бриджинга но когда вспомнил что обе сетевухи Линухса пингуется начал читать ман по бриджу и понял что это соединение двух кард в одно. (Кажется это то и нужно) как Вы думаете?

Vicpo

Попробуй пингануть из локальной сети интерфейс на линухе, который смотрит на модем, если пингует попробуй выполнить
iptables -t nat -A POSTROUTING -o eth1 -j SNAT --to-source 192.168.1.125и пингануть модем

kima

как же не догодался NAT использовать.
СПАСИБО! РАБОТАЕТ!

shiko

05 Июня 2009, 17:41 #14 Последнее редактирование: 05 Июня 2009, 17:42 от shiko
Здравствуйте! У меня похожая ситуация, возникает уже не раз. И сейчас дома тоже хочу из машины работающей под Linux Mandriva сделать простой шлюз для выхода в инет второй машины под windows. На linux машине два сетевых адаптера один в инет смотрит другой в локалку к инету подключение осуществляется по utp. В общем ситуащия похожая но почему то linux видет винду ip-192.168.0.2 и прингует ее, а вот с win машины пинг линукса ip 192.168.0.1 не проходит, винда не видет этой машины. Даю вывод следующих команд:
[root@centr shiko]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.16.3.52  0.0.0.0 255.255.255.252 U 5  0 0 eth1
192.168.0.0 0.0.0.0 255.255.255.0   U 10 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 5  0 0 eth1
169.254.0.0 0.0.0.0 255.255.0.0 U 10 0 0 eth0
127.0.0.0   0.0.0.0 255.0.0.0   U 0  0 0 lo
0.0.0.0 10.16.3.53  0.0.0.0 UG 5  0 0 eth1
[root@centr shiko]# /sbin/ip route list
10.16.3.52/30 dev eth1  proto kernel  scope link  src 10.16.3.54  metric 5
192.168.0.0/24 dev eth0  proto kernel  scope link  src 192.168.0.1  metric 10
169.254.0.0/16 dev eth1  scope link  metric 5
169.254.0.0/16 dev eth0  scope link  metric 10
127.0.0.0/8 dev lo  scope link
default via 10.16.3.53 dev eth1  metric 5
подскажи те пожалуйста, почему происходит односторонний пинг и как это исправить.

Vicpo

вывод команды iptables -L от рута естественно

shiko

05 Июня 2009, 21:12 #16 Последнее редактирование: 05 Июня 2009, 21:54 от shiko
вот пожалуйста:
[root@centr shiko]# iptables -L
Chain INPUT (policy DROP)
target prot opt source   destination
Ifw all  --  anywhere anywhere
eth1_in all  --  anywhere anywhere
eth0_in all  --  anywhere anywhere
ACCEPT all  --  anywhere anywhere
ACCEPT all  --  anywhere anywhere state RELATED,ESTABLISHED
Reject all  --  anywhere anywhere
LOG all  --  anywhere anywhere LOG level info prefix `Shorewall:INPUT:REJECT:'
reject all  --  anywhere anywhere

Chain FORWARD (policy DROP)
target prot opt source   destination
eth1_fwd   all  --  anywhere anywhere
eth0_fwd   all  --  anywhere anywhere
ACCEPT all  --  anywhere anywhere state RELATED,ESTABLISHED
Reject all  --  anywhere anywhere
LOG all  --  anywhere anywhere LOG level info prefix `Shorewall:FORWARD:REJECT:'
reject all  --  anywhere anywhere

Chain OUTPUT (policy DROP)
target prot opt source   destination
eth1_out   all  --  anywhere anywhere
eth0_out   all  --  anywhere anywhere
ACCEPT all  --  anywhere anywhere
ACCEPT all  --  anywhere anywhere state RELATED,ESTABLISHED
Reject all  --  anywhere anywhere
LOG all  --  anywhere anywhere LOG level info prefix `Shorewall:OUTPUT:REJECT:'
reject all  --  anywhere anywhere

Chain Drop (1 references)
target prot opt source   destination
reject tcp  --  anywhere anywhere tcp dpt:auth
dropBcast  all  --  anywhere anywhere
ACCEPT icmp --  anywhere anywhere icmp fragmentation-needed
ACCEPT icmp --  anywhere anywhere icmp time-exceeded
dropInvalid  all  --  anywhere anywhere
DROP   udp  --  anywhere anywhere multiport dports 135,microsoft-ds
DROP   udp  --  anywhere anywhere udp dpts:netbios-ns:netbios-ssn
DROP   udp  --  anywhere anywhere udp spt:netbios-ns dpts:1024:65535
DROP   tcp  --  anywhere anywhere multiport dports 135,netbios-ssn,microsoft-ds
DROP   udp  --  anywhere anywhere udp dpt:1900
dropNotSyn  tcp  --  anywhere anywhere
DROP   udp  --  anywhere anywhere udp spt:domain

Chain Ifw (1 references)
target prot opt source   destination
RETURN all  --  anywhere anywhere set ifw_wl src
DROP   all  --  anywhere anywhere set ifw_bl src
IFWLOG all  --  anywhere anywhere state INVALID,NEW psd weight-threshold: 10 delay-threshold: 10000 lo-ports-weight: 2 hi-ports-weight: 1 IFWLOG prefix 'SCAN'

Chain Reject (6 references)
target prot opt source   destination
reject tcp  --  anywhere anywhere tcp dpt:auth
dropBcast  all  --  anywhere anywhere
ACCEPT icmp --  anywhere anywhere icmp fragmentation-needed
ACCEPT icmp --  anywhere anywhere icmp time-exceeded
dropInvalid  all  --  anywhere anywhere
reject udp  --  anywhere anywhere multiport dports 135,microsoft-ds
reject udp  --  anywhere anywhere udp dpts:netbios-ns:netbios-ssn
reject udp  --  anywhere anywhere udp spt:netbios-ns dpts:1024:65535
reject tcp  --  anywhere anywhere multiport dports 135,netbios-ssn,microsoft-ds
DROP   udp  --  anywhere anywhere udp dpt:1900
dropNotSyn  tcp  --  anywhere anywhere
DROP   udp  --  anywhere anywhere udp spt:domain

Chain all2fw (0 references)
target prot opt source   destination
ACCEPT all  --  anywhere anywhere state RELATED,ESTABLISHED
Reject all  --  anywhere anywhere
LOG all  --  anywhere anywhere LOG level info prefix `Shorewall:all2fw:REJECT:'
reject all  --  anywhere anywhere

Chain all2net (0 references)
target prot opt source   destination
ACCEPT all  --  anywhere anywhere state RELATED,ESTABLISHED
Reject all  --  anywhere anywhere
LOG all  --  anywhere anywhere LOG level info prefix `Shorewall:all2net:REJECT:'
reject all  --  anywhere anywhere

Chain dropBcast (2 references)
target prot opt source   destination
DROP   all  --  anywhere anywhere ADDRTYPE match dst-type BROADCAST
DROP   all  --  anywhere BASE-ADDRESS.MCAST.NET/4

Chain dropInvalid (2 references)
target prot opt source   destination
DROP   all  --  anywhere anywhere state INVALID

Chain dropNotSyn (2 references)
target prot opt source   destination
DROP   tcp  --  anywhere anywhere tcp flags:!FIN,SYN,RST,ACK/SYN

Chain dynamic (4 references)
target prot opt source   destination

Chain eth0_fwd (1 references)
target prot opt source   destination
dynamic all  --  anywhere anywhere state INVALID,NEW
ACCEPT all  --  anywhere anywhere

Chain eth0_in (1 references)
target prot opt source   destination
dynamic all  --  anywhere anywhere state INVALID,NEW
net2fw all  --  anywhere anywhere

Chain eth0_out (1 references)
target prot opt source   destination
fw2net all  --  anywhere anywhere

Chain eth1_fwd (1 references)
target prot opt source   destination
dynamic all  --  anywhere anywhere state INVALID,NEW
ACCEPT all  --  anywhere anywhere

Chain eth1_in (1 references)
target prot opt source   destination
dynamic all  --  anywhere anywhere state INVALID,NEW
net2fw all  --  anywhere anywhere

Chain eth1_out (1 references)
target prot opt source   destination
fw2net all  --  anywhere anywhere

Chain fw2all (0 references)
target prot opt source   destination
ACCEPT all  --  anywhere anywhere state RELATED,ESTABLISHED
Reject all  --  anywhere anywhere
LOG all  --  anywhere anywhere LOG level info prefix `Shorewall:fw2all:REJECT:'
reject all  --  anywhere anywhere

Chain fw2net (2 references)
target prot opt source   destination
ACCEPT all  --  anywhere anywhere state RELATED,ESTABLISHED
ACCEPT all  --  anywhere anywhere

Chain logdrop (0 references)
target prot opt source   destination
DROP   all  --  anywhere anywhere

Chain logreject (0 references)
target prot opt source   destination
reject all  --  anywhere anywhere

Chain net2fw (2 references)
target prot opt source   destination
ACCEPT all  --  anywhere anywhere state RELATED,ESTABLISHED
Drop   all  --  anywhere anywhere
LOG all  --  anywhere anywhere LOG level info prefix `Shorewall:net2fw:DROP:'
DROP   all  --  anywhere anywhere

Chain reject (13 references)
target prot opt source   destination
DROP   all  --  anywhere anywhere ADDRTYPE match src-type BROADCAST
DROP   all  --  BASE-ADDRESS.MCAST.NET/4  anywhere
REJECT tcp  --  anywhere anywhere reject-with tcp-reset
REJECT udp  --  anywhere anywhere reject-with icmp-port-unreachable
REJECT icmp --  anywhere anywhere reject-with icmp-host-unreachable
REJECT all  --  anywhere anywhere reject-with icmp-host-prohibited

Chain shorewall (0 references)
target prot opt source   destination

Chain smurfs (0 references)
target prot opt source   destination
RETURN all  --  default  anywhere
LOG all  --  anywhere anywhere ADDRTYPE match src-type BROADCAST LOG level info prefix `Shorewall:smurfs:DROP:'
DROP   all  --  anywhere anywhere ADDRTYPE match src-type BROADCAST
LOG all  --  BASE-ADDRESS.MCAST.NET/4  anywhere LOG level info prefix `Shorewall:smurfs:DROP:'
DROP   all  --  BASE-ADDRESS.MCAST.NET/4  anywhere

это что получается у меня стоит ipсhain а не iptables интересно, я думал в linux mandriva v2008.1 его уже не ставят.
Скажите, а можно как нибудь остановить работу ipchain и запустить iptables или между ними нет принципиальной разницы, просто я в основном читал про работу iptables так как он более новый сет.экран.

Vicpo

05 Июня 2009, 22:11 #17 Последнее редактирование: 05 Июня 2009, 22:14 от Vicpo
так правильно пинг то закрыт http://linuxforum.kz/public/style_emoticons/<#EMO_DIR#>/smile.gif\' class=\'bbc_emoticon\' alt=\':)\' /> правило нужно создать в мандриве в shorewall, чтобы nat работал для локалки
В мандриве используется shorewall в качестве firewall, он и управляет правилами iptables

shiko

05 Июня 2009, 23:10 #18 Последнее редактирование: 05 Июня 2009, 23:12 от shiko
я тут поковырялся немного и вот что получается у меня iptables установлен, а в службах почему то выключен не помню чтоб я его вырубал и запустить его у меня не выходит! http://linuxforum.kz/public/style_emoticons/<#EMO_DIR#>/blink.gif\' class=\'bbc_emoticon\' alt=\':blink:\' />  
Насчет правил я почитаю но как быть с неработающим iptables??? Как его запустить

shiko

Ничего не понимаю все вроде бы работает - это я про iptables.
Выполнил следующие команды:
Цитировать/sbin/service iptables restart
/sbin/chkconfig --level 345 iptables on
Захожу в drakconf проверяю "Включение и отключение системных сервисов" показывает iptables - выключен, даю команду iptables -L выдает всю таблицу. Я так думаю если бы айритейбл не работал то и команду бы он не выполнял, тогда почему показывает что он не работает. В чем может быть дело???