Настройка серверов DNAT

265
user1852471

Привет у меня проблемы с подключением к серверу, который я настроил с помощью конфигурации DNAT.

у меня есть два прослушивающих сервера 145.217 и 145.241, оба настроили свой ip шлюза так же, как и мой loadbalancer ip 145.245

ниже мои iptables и netstat подробно. следующее содержимое выполняется с помощью netstat -nr с моих серверов AIX (145.217 и 145.241)

root@CMS-HTTP2-dep2(/)# netstat -nr Routing tables Destination Gateway Flags Refs Use If Exp Groups  Route Tree for Protocol Family 2 (Internet): default xxx.xxx.145.245 UG 4 3863 en0 - - => default xxx.xxx.145.1 UG 2 654 en0 - - xxx.xxx.0.0 xxx.xxx.145.217 UHSb 0 0 en0 - - => xxx.xxx/16 xxx.xxx.145.217 U 28 339523 en0 - - xx.xxx.255.255 xxx.xxx.145.217 UHSb 0 8 en0 - - 127/8 127.0.0.1 U 5 228443 lo0 - - 

и следующие добавлены к моим iptables в моем балансировщике нагрузки (145.245)

Chain PREROUTING (policy ACCEPT) target prot opt source destination DNAT tcp -- anywhere anywhere mark match 0x200 /* FARM_ATMC_0_ */ to:xxxxxx.145.217:8889 DNAT tcp -- anywhere anywhere mark match 0x201 /* FARM_ATMC_1_ */ to:xxxxxx.145.241:8889   Chain INPUT (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination  Chain POSTROUTING (policy ACCEPT) target prot opt source destination 

Я могу подключиться к моим серверам, если добавлю

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE 

но это побеждает цель DNAT, поскольку мне нужно получить реальный входящий IP

Пожалуйста, дайте мне знать, если мне нужно предоставить дополнительную информацию, так как я очень плохо знаком с сетью

РЕДАКТИРОВАТЬ: Подробнее ............ ниже приводится tcpdump, который я получаю с моего сервера прослушивания 145.241, который указывает, что сообщение telnet действительно достигает его через балансировщик нагрузки

root@CMS-HTTP1-dep2(/)# tcpdump -vv -x -X -s 1500 -i en0 'port 8889' tcpdump: listening on en0, link-type 1, capture size 1500 bytes 06:11:37.034781 IP (tos 0x0, ttl 127, id 3352, offset 0, flags [DF], proto: TCP (6), length: 56) xxx.xxx.145.247.55645 > CMS-HTTP1-dep2.ddi-tcp-2: S, cksum 0x8e84 (correct) 1949565717:1949565717(0) win 8192 <mss 1460,nop,wscale 8,nop,nop,sackOK,nop,opt-14:03> 0x0000: 4500 0038 0d18 4000 7f06 b591 0a97 91f7 E..8..@...▒....▒ 0x0010: 0a97 91f1 d95d 22b9 7434 0315 0000 0000 ...▒▒]"▒t4...... 0x0020: 9002 2000 8e84 0000 0204 05b4 0103 0308 ...........▒.... 0x0030: 0101 0402 010e 0303 ........ 06:11:37.034839 IP (tos 0x0, ttl 60, id 41150, offset 0, flags [none], proto: TCP (6), length: 48) CMS-HTTP1-dep2.ddi-tcp-2 > xxx.xxx.145.247.55645: S, cksum 0xf418 (correct) 2780642750:2780642750(0) ack 1949565718 win 65535 <mss 1460,nop,wscale 3> 0x0000: 4500 0030 a0be 0000 3c06 a4f3 0a97 91f1 E..0▒▒..<.▒▒...▒ 0x0010: 0a97 91f7 22b9 d95d a5bd 3dbe 7434 0316 ...▒"▒▒]▒▒=▒t4.. 0x0020: 7012 ffff f418 0000 0204 05b4 0103 0303 p.▒▒▒......▒.... 06:11:37.035222 IP (tos 0x0, ttl 128, id 3474, offset 0, flags [DF], proto: TCP (6), length: 40) xxx.xxx.145.247.55645 > CMS-HTTP1-dep2.ddi-tcp-2: R, cksum 0x8c1e (correct) 1949565718:1949565718(0) win 0 0x0000: 4500 0028 0d92 4000 8006 b427 0a97 91f7 E..(..@...▒'...▒ 0x0010: 0a97 91f1 d95d 22b9 7434 0316 7434 0316 ...▒▒]"▒t4..t4.. 0x0020: 5004 0000 8c1e 0000 0000 0000 0000 P............. 

спасибо и всего наилучшего

1
Какой у тебя актуальный вопрос? DavidPostill 7 лет назад 0
Я настроил среду dnat, но мое входящее сообщение не может пройти. tcpdump предполагает, что он получил сообщение, я подозреваю, что каким-то образом настройка dnat не настроена должным образом, и мне нужна помощь для отладки / решения проблемы. user1852471 7 лет назад 0
У вас есть два «маршрута по умолчанию» - один идет к балансировщику нагрузки, а другой - к xyz1. Балансировщик нагрузки предназначен для исходящего трафика - всего. Сам не использовал, но я думал, что балансировщик нагрузки перенаправляет трафик из одного места в несколько. Тогда я не ожидал бы, что балансировщик нагрузки будет одним из моих маршрутизаторов по умолчанию - для моих ответов, если ответ - через NAT - не вернется к балансировщику и не восстановит исходный IP-адрес запрашивающей стороны. Итак, что произойдет, если вы `route delete net default xyz245`? Michael Felt 7 лет назад 0
Для конфигурации DNAT запрашивающая сторона не может находиться в той же сети, что и серверы или маршрутизатор (балансировщик нагрузки). После этого я могу подключиться к сети по сети. @Micheal Чувствовал спасибо за предложение, уже удалил один из шлюза по умолчанию, шлюз внутренних серверов будет IP-адрес маршрутизатора сейчас user1852471 7 лет назад 0

1 ответ на вопрос

0
user1852471

Для конфигурации DNAT запрашивающая сторона не может находиться в той же сети, что и серверы или маршрутизатор (балансировщик нагрузки). После этого я могу подключиться к сети по сети.