Routing
Модератор: Bizdelnick
-
user
- Сообщения: 163
- Статус: ~
- ОС: Debian GNU/Linux
Routing
Подскажите, как настроить вот такую вещь:
Есть 2 интерфейса, допустим eth0 и eth1.
На обоих прямые внешние IP-адреса, интернет.
Как сделать, чтобы с машины все маршруты 0.0.0.0, кроме 1 подсети, например 10.0.0.0/24 - шли через eth0, а 10.0.0.0/24 через eth1?
Но при этом нужно, чтобы сервер был виден с инета по обоим IP-адресам обоих интерфейсов.
Как сделать, подскажите пожалуйста.
Есть 2 интерфейса, допустим eth0 и eth1.
На обоих прямые внешние IP-адреса, интернет.
Как сделать, чтобы с машины все маршруты 0.0.0.0, кроме 1 подсети, например 10.0.0.0/24 - шли через eth0, а 10.0.0.0/24 через eth1?
Но при этом нужно, чтобы сервер был виден с инета по обоим IP-адресам обоих интерфейсов.
Как сделать, подскажите пожалуйста.
-
sash-kan
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: Routing
user@gate
$ sudo ip r a 10.0.0.0/24 dev eth1
$ sudo ip r a default dev eth0Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
user
- Сообщения: 163
- Статус: ~
- ОС: Debian GNU/Linux
-
kasak
- Сообщения: 899
- ОС: OpenBSD
Re: Routing
с инета нельзя зайти на адреса начинающиеся с 10, 172, 127, 192 и др.
правка: упс.. перечитал топик. сори, гоню.
если на интерфейсе внешний IP он полюбому будет виден, локальной маршрутизации это не касается
правка: упс.. перечитал топик. сори, гоню.
если на интерфейсе внешний IP он полюбому будет виден, локальной маршрутизации это не касается
Linux kasak-pc 6.17.8-arch1-1 #1 SMP PREEMPT_DYNAMIC Fri, 14 Nov 2025 06:54:20 +0000 x86_64 GNU/Linux
-
user
- Сообщения: 163
- Статус: ~
- ОС: Debian GNU/Linux
Re: Routing
Так это понятно, что будет виден.
Есть машина с 2 подключениями eth0 и ppp0 к примеру.
Как прописать роутинг, чтобы с машины шли соединения исходящие через интерфейс ppp0.
А заходить на машину из инета можно было по адресам любого из интерфейсов...
Если прописать route add default dev ppp0, то от меня все будет идти через ppp0.
Но при этом по eth0 не будет пускать входящие из вне. Ответа в обратнуб сторону не будет.
Как прописать маршрут для eth0?
Есть машина с 2 подключениями eth0 и ppp0 к примеру.
Как прописать роутинг, чтобы с машины шли соединения исходящие через интерфейс ppp0.
А заходить на машину из инета можно было по адресам любого из интерфейсов...
Если прописать route add default dev ppp0, то от меня все будет идти через ppp0.
Но при этом по eth0 не будет пускать входящие из вне. Ответа в обратнуб сторону не будет.
Как прописать маршрут для eth0?
-
kasak
- Сообщения: 899
- ОС: OpenBSD
Re: Routing
всё, понял тему...
но помочь даже не знаю чем
но помочь даже не знаю чем
Linux kasak-pc 6.17.8-arch1-1 #1 SMP PREEMPT_DYNAMIC Fri, 14 Nov 2025 06:54:20 +0000 x86_64 GNU/Linux
-
user
- Сообщения: 163
- Статус: ~
- ОС: Debian GNU/Linux
Re: Routing
Не верится, что никто не знает..
Очень надо (
Очень надо (
-
kasak
- Сообщения: 899
- ОС: OpenBSD
Re: Routing
реально очень трудный ребус... я бы подумал что-нить насчёт IPTABLES.
но я в нём не силён..
возможно как-нибудь можно перенаправить...
может быть алиас можно ещё один присвоить к eth1 ??
но я в нём не силён..
возможно как-нибудь можно перенаправить...
может быть алиас можно ещё один присвоить к eth1 ??
Linux kasak-pc 6.17.8-arch1-1 #1 SMP PREEMPT_DYNAMIC Fri, 14 Nov 2025 06:54:20 +0000 x86_64 GNU/Linux
-
user
- Сообщения: 163
- Статус: ~
- ОС: Debian GNU/Linux
Re: Routing
Говорят, надо глядеть в сторону Policy routing, iproute2..
Суть - посылать пакеты с того интерфейса, на который они пришли, а не по default route.
Гуглил, гуглил, но что, куда и почем там и не понял. Не нашел не 1 путного мануала по этому. (
Суть - посылать пакеты с того интерфейса, на который они пришли, а не по default route.
Гуглил, гуглил, но что, куда и почем там и не понял. Не нашел не 1 путного мануала по этому. (
-
IPhoenixI
- Сообщения: 27
- ОС: ASP Linux + FreeBSD
-
Uncle_Theodore
- Сообщения: 3339
- ОС: Slackware 12.2, ArchLinux 64
Re: Routing
При чем тут FreeBSD, хотел бы я знать?
А хороший мануал по iproute2 вот тут
http://linux-ip.net/gl/ip-cref/
А хороший мануал по iproute2 вот тут
http://linux-ip.net/gl/ip-cref/
-
kot.ua
- Сообщения: 136
- ОС: debian
Re: Routing
Помогите, пожалуйста, настроить маршрутизацию.
Не могу понять, что делаю не так...
Больше ничего с сетевыми настройками не делал.
Клиенты интернет получают, все работает, как часики
Если заходить с клиента, не видно ни городской сети, ни интернета.
Поискал здесь на форуме - темы с маршрутизацией затрагивались неоднократно, но... все равно "нипанятна"...
Судя по найденным постам - проблема в маршрутах.
Подскажите, пожалуйста, что нужно сделать?
Не могу понять, что делаю не так...
Код: Выделить всё
Ситуация №1
Поставил маршрутизатор (debian) на работе:
-------------------------------------------------------------------------------------------
[клиенты - eth0 1.1.1.0/24] - [eth0 1.1.1.1 - маршрутизатор - ppp0 ] - [модем] - [интернет]
-------------------------------------------------------------------------------------------
1) включил пересылку пакетов между интерфейсами:
/etc/sysctl.conf
#
net.ipv4.ip_forward = 1
#
2) в iptables настроил NAT:
#
*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A POSTROUTING -s 1.1.1.0/255.255.255.0 -o ppp0 -j MASQUERADE
#Больше ничего с сетевыми настройками не делал.
Клиенты интернет получают, все работает, как часики
Код: Выделить всё
Ситуация №2
Пытаюсь поставить маршрутизатор дома:
-------------------------------------------------------------------------------------------------------------------------------
[дом.клиент eth0 1.1.1.2] - [eth1 1.1.1.1 - маршрутизатор - eth0 192.168.99.99] - [городская сеть на витой паре - ресурсы сети]
- ppp0 ***адрес*** ] - [vpn-server 192.168.99.1] - [интернет]
-------------------------------------------------------------------------------------------------------------------------------
1) включил пересылку пакетов между интерфейсами:
/etc/sysctl.conf
#
net.ipv4.ip_forward = 1
#
2) в iptables настроил NAT:
#
*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A POSTROUTING -s 1.1.1.0/255.255.255.0 -o eth0 -j SNAT --to-source 192.168.99.99
-A POSTROUTING -s 1.1.1.0/255.255.255.0 -o ppp0 -j MASQUERADE
#Если заходить с клиента, не видно ни городской сети, ни интернета.
Поискал здесь на форуме - темы с маршрутизацией затрагивались неоднократно, но... все равно "нипанятна"...
Судя по найденным постам - проблема в маршрутах.
Подскажите, пожалуйста, что нужно сделать?
Код: Выделить всё
Вывод route -n до поднятия pptp-соединения:
$ sudo route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
1.1.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
192.168.64.0 0.0.0.0 255.255.192.0 U 0 0 0 eth0
Вывод route -n после поднятия pptp-соединения:
$ sudo route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
195.16.xx.xx 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0
1.1.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
192.168.64.0 0.0.0.0 255.255.192.0 U 0 0 0 eth0
0.0.0.0 0.0.0.0 0.0.0.0 U 0 0 0 ppp0
/etc/ppp/peers/vpn
pty "pptp 192.168.99.1 --nolaunchpppd"
name MyName
remotename PPTP
file /etc/ppp/options.pptp
ipparam vpn
defaultroute
usepeerdns
persist
/etc/network/interfaces
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.99.99
netmask 255.255.192.0
auto eth1
iface eth1 inet static
address 1.1.1.1
netmask 255.255.255.0
network 1.1.1.0
broadcast 1.1.1.255
auto tunnel
iface tunnel inet ppp
provider vpn-
kot.ua
- Сообщения: 136
- ОС: debian
Re: Routing
Часть проблемы решена:
в файле /var/lib/iptables/active
заменил
:FORWARD DROP [0:0]
на
:FORWARD ACCEPT [0:0]
В результате клиент теперь получает интернет. Спасибо Hangman'у!
Остался доступ к гродской сети. Его нет.
Что можно сделать?
в файле /var/lib/iptables/active
заменил
:FORWARD DROP [0:0]
на
:FORWARD ACCEPT [0:0]
В результате клиент теперь получает интернет. Спасибо Hangman'у!
Остался доступ к гродской сети. Его нет.
Что можно сделать?
Код: Выделить всё
# Generated by iptables-save v1.3.6 on Wed Jun 20 15:47:38 2007
*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A POSTROUTING -s 1.1.1.0/255.255.255.0 -o eth0 -j SNAT --to-source 192.168.99.99
-A POSTROUTING -s 1.1.1.0/255.255.255.0 -o ppp0 -j MASQUERADE
COMMIT
# Completed on Wed Jun 20 15:47:38 2007
# Generated by iptables-save v1.3.6 on Wed Jun 20 15:47:38 2007
*filter
:INPUT DROP [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT DROP [0:0]
-A INPUT -i lo -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p udp -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --sport 135 -j ACCEPT
-A INPUT -i eth0 -p udp -m udp --sport 135 -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --sport 137 -j ACCEPT
-A INPUT -i eth0 -p udp -m udp --sport 137 -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --sport 139 -j ACCEPT
-A INPUT -i eth0 -p udp -m udp --sport 139 -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --sport 445 -j ACCEPT
-A INPUT -i eth0 -p udp -m udp --sport 445 -j ACCEPT
-A INPUT -s 192.168.99.1 -d 192.168.99.99 -p tcp -m tcp --dport 1723 -m state --state NEW,ESTABLISHED -j ACCEPT
-A INPUT -s 192.168.99.1 -d 192.168.99.99 -p gre -j ACCEPT
-A INPUT -i eth1 -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -p udp -m udp --dport 123 -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -p icmp -j ACCEPT
-A OUTPUT -p tcp -m tcp --sport 32768:65535 -j ACCEPT
-A OUTPUT -p udp -m udp --sport 32768:65535 -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --dport 135 -j ACCEPT
-A OUTPUT -o eth0 -p udp -m udp --dport 135 -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --dport 137 -j ACCEPT
-A OUTPUT -o eth0 -p udp -m udp --dport 137 -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --dport 139 -j ACCEPT
-A OUTPUT -o eth0 -p udp -m udp --dport 139 -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --dport 445 -j ACCEPT
-A OUTPUT -o eth0 -p udp -m udp --dport 445 -j ACCEPT
-A OUTPUT -s 192.168.99.99 -d 192.168.99.1 -p tcp -m tcp --dport 1723 -m state --state NEW,ESTABLISHED -j ACCEPT
-A OUTPUT -s 192.168.99.99 -d 192.168.99.1 -p gre -j ACCEPT
-A OUTPUT -o eth1 -p tcp -m tcp --sport 22 -j ACCEPT
-A OUTPUT -p udp -m udp --dport 123 -j ACCEPT
COMMIT
# Completed on Wed Jun 20 15:47:38 2007-
user
- Сообщения: 163
- Статус: ~
- ОС: Debian GNU/Linux
Re: Routing
Uncle_Theodore писал(а): ↑19.06.2007 03:58При чем тут FreeBSD, хотел бы я знать?
А хороший мануал по iproute2 вот тут
http://linux-ip.net/gl/ip-cref/
Кто понимает в этом, подскажите проще :\
Есть 2 интерфейса, есть 2 локалки на каждом, где диапазоны пересекаются.
Как сделать сервер доступным из обоих!
Конкретнее. 10.24.0.0/24 есть и там и там. Нужно чтобы сервер отзывался из обоих сетей с таких адресов, а от меня все по умолчанию уходило через eth1 допустим.
Не понимаю как сделать, сколько уже пролистал всего :\
-
user
- Сообщения: 163
- Статус: ~
- ОС: Debian GNU/Linux
Re: Routing
Всё, вопрос решен.
Кому интересно:
Кому интересно:
Код: Выделить всё
echo 10 t1 >> /etc/iproute2/rt_tables
echo 11 t2 >> /etc/iproute2/rt_tables
ip rule add from ип_eth1 lookup t1
ip route add 0/0 via шлюз_eth1 table t1
ip rule add from ип_eth2 lookup t2
ip route add 0/0 via шлюз_eth2 table t2