SlipKo Posted April 14, 2021 · Report post Всем привет! Есть у меня 2 DNS сервера на Linux и FreeBSD. Оба находятся в одной сети с серой адресацией и на loopback имеют белый адрес (каждый свой). Понадобилось ходить в мир с белым адресом на loopbackе. На Linux делается все в одну команду: ip r delete default && ip route add default via <gw_ip> src <loopback_ip>. А вот с FreeBSD (кстати 12.2-RELEASE) проблема: там такой фичи нет. Народ чет заморачивается с ipfw, pf, но это все для проходящего трафа, а мне нужно локальный выпускать с адресом источника который висит на loopback. Через route-map в FRR тоже не смог заставить работать эту штуку. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
vop Posted April 14, 2021 · Report post ipv6 сам это делает - выбирает глобальный ip Что там во фре - фиг его знает. А в мир через что ходите? Может там настроить nat? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
ne-vlezay80 Posted April 14, 2021 · Report post 12 минут назад, vop сказал: ipv6 сам это делает - выбирает глобальный ip Что там во фре - фиг его знает. А в мир через что ходите? Может там настроить nat? А как быть, если нужно указать внешний ipv6 адрес? У меня был случай, когда одному серверу отправлял пакеты с одного ip-адреса, а пакеты приходили от этого сервера с другого ip-адреса. Помогла настройка NAT, а также установка src у маршрута.. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
SlipKo Posted April 14, 2021 (edited) · Report post Для понимания: ifconfig vtnet0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=6c07bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,VLAN_HWTSO,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6> ether da:d9:55:85:c4:a1 inet 10.200.3.8 netmask 0xffffff00 broadcast 10.200.3.255 media: Ethernet 10Gbase-T <full-duplex> status: active nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL> lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384 options=680003<RXCSUM,TXCSUM,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6> inet6 ::1 prefixlen 128 inet6 fe80::1%lo0 prefixlen 64 scopeid 0x2 inet 127.0.0.1 netmask 0xff000000 inet 92.xxx.yyy.5 netmask 0xffffffff groups: lo nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL> Маршрутизация netstat -rn Routing tables Internet: Destination Gateway Flags Netif Expire default 10.200.3.1 UG1 vtnet0 10.200.3.0/24 link#1 U vtnet0 10.200.3.8 link#1 UHS lo0 92.xxx.yyy.3/32 10.200.3.20 UG1 vtnet0 92.xxx.yyy.5 link#2 UH lo0 92.xxx.yyy.6/32 10.200.3.9 UG1 vtnet0 127.0.0.1 link#2 UH lo0 sh ip route Codes: K - kernel route, C - connected, S - static, R - RIP, O - OSPF, I - IS-IS, B - BGP, E - EIGRP, N - NHRP, T - Table, v - VNC, V - VNC-Direct, A - Babel, D - SHARP, F - PBR, f - OpenFabric, > - selected route, * - FIB route, q - queued, r - rejected, b - backup S>* 0.0.0.0/0 [1/0] via 10.200.3.1, vtnet0, weight 1, 04:17:28 O 0.0.0.0/0 [110/11] via 10.200.3.1, vtnet0, weight 1, 4d23h41m O 10.200.3.0/24 [110/10] is directly connected, vtnet0, weight 1, 4d23h41m C>* 10.200.3.0/24 [0/1] is directly connected, vtnet0, 4d23h42m O>* 92.xxx.yyy.3/32 [110/20] via 10.200.3.20, vtnet0, weight 1, 1d03h13m O 92.xxx.yyy.5/32 [110/0] is directly connected, lo0, weight 1, 4d23h42m C>* 92.xxx.yyy.5/32 [0/1] is directly connected, lo0, 4d23h42m O>* 92.xxx.yyy.6/32 [110/10] via 10.200.3.9, vtnet0, weight 1, 4d23h41m По поводу установки src у маршрута - это как раз то, что мне нужно. Скажите как это во фре сделать? Edited April 14, 2021 by SlipKo Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
snar Posted April 14, 2021 · Report post Читайте маны, они рулят. Как-то так: route delete default; route add default <gw> -ifa <loopback_ip> Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
vop Posted April 14, 2021 · Report post 2 hours ago, ne-vlezay80 said: А как быть, если нужно указать внешний ipv6 адрес? У меня был случай, когда одному серверу отправлял пакеты с одного ip-адреса, а пакеты приходили от этого сервера с другого ip-адреса. Помогла настройка NAT, а также установка src у маршрута.. Если у хоста есть глобальный ipv6 на любом интерфейсе (для v6 это неважно), то хост выберет его в качестве src адреса. Пакет будет роутиться по линк-локальным линкам (тавтология), пока не доедет до сервера с глобальным коннективити. Сервер "запишет" себе приехавший src, и будет знать, куда его возвращать. PS Ну блин, из меня обьяснялщик... :) Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
ollsanek Posted April 20, 2021 · Report post В 14.04.2021 в 22:45, snar сказал: Читайте маны, они рулят. Как-то так: route delete default; route add default <gw> -ifa <loopback_ip> Круто, если "-ifa" именно подменяет src ip. man так написан, что я б из него не догадался без помощи зала. сам такую задачу решал несколько лет назад, через pf натом собственного трафика в адрес лупбека. Работало отлично. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...