Анотація:
У мене (я вважаю, що маршрутизація) є проблеми при додаванні вторинного провайдера до моєї існуючої установки мережі: вхідний трафік через Router1
не відповідає, але локальний трафік і вхід через Router0
це працює нормально.
Як я можу зберегти деталі, які в даний час працюють добре, роблячи вхідний трафік через Router1
роботу?
Розробка:
Я накреслив схему нижче з головними принципами ситуації (на практиці в кожній локальній мережі є більше пристроїв, але вони не мають значення).
Це ситуація:
- У мене є дві внутрішні мережі:
LAN0
є192.168.x.0/24
іLAN1
є192.168.y.0/24
. Обидва працюють добре для внутрішнього трафіку (наприклад, http за допомогою cURL ). LAN0
завжди був пов'язаний черезRouter0
іISP0
доInternet
.LAN1
завжди бувRouter1
, але зараз підключенийISP1
доInternet
.- Машини лише на
LAN0
маршруті за маршрутом за замовчуванням, який забезпечуєRouter0
нормальну роботу для вихідного та вхідного трафіку. - Машини лише на
LAN1
маршруті за маршрутом за замовчуванням, який забезпечуєRouter1
нормальну роботу для вихідного та вхідного трафіку. - Внутрішній трафік
LAN0
іLAN1
завжди працював нормально. - Вхідний трафік через
Router1
дляWindowsB
надходить правильно: я можу підключитися до нього через RDP зWindowsC
. - Вхідний трафік через
Router1
дляLinuxB
прибуває (згідно tcpdump ), але не відповідає відповіді, якcurl http://e.f.g.h
фронтLinuxC
показує з tcpdump наLinuxB
шоу:
Він показує лише пакети, які відповідно до вихідного формату tcpdump мають набір прапора SYN :
LinuxB:/tmp/LinuxB.eth1.80 # tcpdump -i eth1 'port 80'
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth1, link-type EN10MB (Ethernet), capture size 65535 bytes
13:35:19.489779 IP i.j.k.l.57512 > 192.168.y.2.http: Flags [S], seq 816356596, win 65535, options [mss 1460,nop,wscale 4,nop,nop,TS val 1287047182 ecr 0,sackOK,eol], length 0
13:35:19.788841 IP i.j.k.l.57512 > 192.168.y.2.http: Flags [S], seq 816356596, win 65535, options [mss 1460,nop,wscale 4,nop,nop,TS val 1287047478 ecr 0,sackOK,eol], length 0
13:35:19.888835 IP i.j.k.l.57512 > 192.168.y.2.http: Flags [S], seq 816356596, win 65535, options [mss 1460,nop,wscale 4,nop,nop,TS val 1287047578 ecr 0,sackOK,eol], length 0
13:35:19.989412 IP i.j.k.l.57512 > 192.168.y.2.http: Flags [S], seq 816356596, win 65535, options [mss 1460,nop,wscale 4,nop,nop,TS val 1287047678 ecr 0,sackOK,eol], length 0
13:35:20.089685 IP i.j.k.l.57512 > 192.168.y.2.http: Flags [S], seq 816356596, win 65535, options [mss 1460,nop,wscale 4,nop,nop,TS val 1287047778 ecr 0,sackOK,eol], length 0
13:35:20.190836 IP i.j.k.l.57512 > 192.168.y.2.http: Flags [S], seq 816356596, win 65535, options [mss 1460,nop,wscale 4,nop,nop,TS val 1287047877 ecr 0,sackOK,eol], length 0
13:35:20.392123 IP i.j.k.l.57512 > 192.168.y.2.http: Flags [S], seq 816356596, win 65535, options [mss 1460,nop,wscale 4,nop,nop,TS val 1287048072 ecr 0,sackOK,eol], length 0
13:35:20.693692 IP i.j.k.l.57512 > 192.168.y.2.http: Flags [S], seq 816356596, win 65535, options [mss 1460,sackOK,eol], length 0
13:35:21.197162 IP i.j.k.l.57512 > 192.168.y.2.http: Flags [S], seq 816356596, win 65535, options [mss 1460,sackOK,eol], length 0
13:35:22.204134 IP i.j.k.l.57512 > 192.168.y.2.http: Flags [S], seq 816356596, win 65535, options [mss 1460,sackOK,eol], length 0
13:35:24.115961 IP i.j.k.l.57512 > 192.168.y.2.http: Flags [S], seq 816356596, win 65535, options [mss 1460,sackOK,eol], length 0
13:35:27.852374 IP i.j.k.l.57512 > 192.168.y.2.http: Flags [S], seq 816356596, win 65535, options [mss 1460,sackOK,eol], length 0
13:35:31.967049 IP i.j.k.l.57512 > 192.168.y.2.http: Flags [S], seq 816356596, win 65535, options [mss 1460,sackOK,eol], length 0
Це LinuxB
таблиця маршрутів:
LinuxB:/tmp/LinuxB.eth1.80 # route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 192.168.x.1 0.0.0.0 UG 0 0 0 eth0
loopback * 255.0.0.0 U 0 0 0 lo
link-local * 255.255.0.0 U 0 0 0 eth0
192.168.x.0 * 255.255.255.0 U 0 0 0 eth0
192.168.x.0 * 255.255.255.0 U 0 0 0 eth1
Оскільки підключення RDP від WindowsC
до WindowsB
відмінно працює, я поновлюю це справді проблема маршрутизації. Це WindowsB
таблиця маршрутів:
C:\temp>route print
===========================================================================
Interface List
0x1 ........................... MS TCP Loopback interface
0x2 ...00 0c 29 35 77 e1 ...... AMD PCNET Family PCI Ethernet Adapter - Packet Scheduler Miniport
0x3 ...00 0c 29 35 77 eb ...... VMware Accelerated AMD PCNet Adapter - Packet Scheduler Miniport
===========================================================================
===========================================================================
Active Routes:
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 192.168.x.1 192.168.x.4 10
0.0.0.0 0.0.0.0 192.168.y.1 192.168.y.4 5
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1
192.168.x.0 255.255.255.0 192.168.x.4 192.168.x.4 10
192.168.x.4 255.255.255.255 127.0.0.1 127.0.0.1 10
192.168.x.255 255.255.255.255 192.168.x.4 192.168.x.4 10
192.168.y.0 255.255.255.0 192.168.y.4 192.168.y.4 10
192.168.y.4 255.255.255.255 127.0.0.1 127.0.0.1 10
192.168.y.255 255.255.255.255 192.168.y.4 192.168.y.4 10
224.0.0.0 240.0.0.0 192.168.x.4 192.168.x.4 10
224.0.0.0 240.0.0.0 192.168.y.4 192.168.y.4 10
255.255.255.255 255.255.255.255 192.168.x.4 192.168.x.4 1
255.255.255.255 255.255.255.255 192.168.y.4 192.168.y.4 1
Default Gateway: 192.168.y.1
===========================================================================
Persistent Routes:
Network Address Netmask Gateway Address Metric
0.0.0.0 0.0.0.0 192.168.y.1 5
0.0.0.0 0.0.0.0 192.168.x.1 10
Тож як я можу зробити так, щоб маршрутизація LinuxB
була такою:
- зберегти за замовчуванням маршрут на
LinuxB
до192.168.x.1
таким вихідний трафік продовжує використовуватиRouter0
/ISP0
- продовжуйте відповідати на вхідні запити, починаючи
LAN0
з цього дняLAN0
- продовжуйте відповідати на вхідні запити, починаючи
LAN1
з цього дняLAN1
- продовжуйте відповідати на вхідні запити через
Router0
(a.b.c.d
/192.168.x.1
) через192.168.x.1
- почати відповідати на вхідні запити через
Router1
(e.f.g.h
/192.168.y.1
) через192.168.y.1
- бонус: мати
Router1
провал або баланс навантаженняRouter0
Постскрипт:
Зображення PNG нижче генерується на тексті UML через безкоштовний онлайн- механізм PlantUML . Якщо ви хочете побачити оригінальний текст UML, вставте посилання на зображення PNG у цю форму PlantUML і натисніть Submit
.
Yast
здається , за робити складну маршрутизацію і , route
здається застарілим на користь ip
. Див opensuse.14.x6.nabble.com/yast2-advanced-routing-td3083578.html і suse.com/documentation/sles11/book_sle_admin/data / ...
yast
.