LINUX.ORG.RU
решено ФорумAdmin

Маршрутизация для доп ip

 


0

2

Всем привет. Есть сервер, у него есть реальный ip + есть дополнительный прописан алиасом из другой под-сети. Как мне сделать wget запрос с дополнительного ip(bind-adress уже юзал). Все запросы что я делаю идут через основной ip, подскажите куда капнуть

Что вы указываете в ″--bind-address″, с того адреса wget и идёт, ищите в iptables место, где «портится» исходящий адрес.

mky ★★★★★
()
Ответ на: комментарий от mky

в --bind-address указываю тот ip с которого хочу отправить запрос

Ien_Shepard ★★★
() автор топика
Ответ на: комментарий от mky

в фаерволе кроме порт форвардинга ничего нет, даже nat средствами KVM организован и я ничего в iptables не прописывал. Можете подсказать что примерно прописать надо ?

Ien_Shepard ★★★
() автор топика
Ответ на: комментарий от Ien_Shepard

Покажи как делаешь запрос, ip addr show и iptables -t nat -L -vn c машины где делается запрос. Еще посмотри в tcpdump -i твой_исходящий_интерфейс -nn на предмет здесь ли происходит подмена адресов

Прозреваю безусловный NAT в POSTROUTING и отсутствие исключений для второго адреса

Pinkbyte ★★★★★
()
Последнее исправление: Pinkbyte (всего исправлений: 1)
Ответ на: комментарий от Pinkbyte

запрос делаю так, wget --bind-address XX.XX.XX.53 указываю ip alias

Вот правила nat

484K 28M MASQUERADE tcp  — * * 192.168.222.0/24 !192.168.222.0/24 masq ports: 1024-65535
1950K 134M MASQUERADE udp  — * * 192.168.222.0/24 !192.168.222.0/24 masq ports: 1024-65535
27 1168 MASQUERADE all  — * * 192.168.222.0/24 !192.168.222.0/24
4456K 294M MASQUERADE all  — * virbr0 0.0.0.0/0 0.0.0.0/0
0 0 MASQUERADE all  — * virbr0 0.0.0.0/0 0.0.0.0/0
3413 245K MASQUERADE all  — * em1 0.0.0.0/0 0.0.0.0/0
0 0 MASQUERADE all  — * em1:0 0.0.0.0/0 0.0.0.0/0
0 0 MASQUERADE all  — * em1 0.0.0.0/0 0.0.0.0/0
0 0 MASQUERADE all  — * em1:0 0.0.0.0/0 0.0.0.0/0
0 0 MASQUERADE all  — * em1 0.0.0.0/0 0.0.0.0/0

Ien_Shepard ★★★
() автор топика
Ответ на: комментарий от Ien_Shepard

0 0 MASQUERADE all — * em1:0 0.0.0.0/0 0.0.0.0/0
0 0 MASQUERADE all — * em1 0.0.0.0/0 0.0.0.0/0
0 0 MASQUERADE all — * em1:0 0.0.0.0/0 0.0.0.0/0
0 0 MASQUERADE all — * em1 0.0.0.0/0 0.0.0.0/0

эмммм...

Мне кажется или эти правила мягко говоря ничем не отличаются. Более того, судя по количеству совпадений(первые 2 колонки) - до них вообще дело не доходит. Ну это я так, в порядке перфекционизма.

Далее - ты не ответил какой у тебя выходной интерфейс? Подозреваю что, это em1. Тогда правило

3413 245K MASQUERADE all — * em1 0.0.0.0/0 0.0.0.0/0

ВСЕГДА будет делать NAT на первичный адрес данного интерфейса

Pinkbyte ★★★★★
()
Ответ на: комментарий от Pinkbyte

да так и есть em1
как сделать что бы через em0:1(это alias с реальным ip адресом) можно было сделать запрос ?

Ien_Shepard ★★★
() автор топика
Ответ на: комментарий от Ien_Shepard

Добавить исключающее правило в таблице для твоего реального адреса перед остальными правилами. Например,

iptables -t nat -I POSTROUTING -s <realip> -j ACCEPT

nickleiten ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.