Страница 1 из 1

Как разбираться с несколькими IP на внешнем интерфейсе?

Добавлено: 2017-05-31 14:19:16
Духовитин
Товарищи, здравствуйте!

Нам тут провайдер выдал блок внешних IP адресов. Я собственно хочу сделать чтобы например юзеры в интернет выходили через один IP, чтобы внешние сервисы работали через другой IP и т.д.

Подскажите пожалуйста, как в данном случае ipfw nat настраивается?
Надо ли адреса разносить по клонированным интерфейсам или можно повешав их алиасами всё разобрать?

Дайте плиз примеры или ссылки что почитать.

Как разбираться с несколькими IP на внешнем интерфейсе?

Добавлено: 2017-06-01 8:03:36
ыть
а че там разбирацца, пилиш вланы и вперед..
если прям сильно несколько и есть внешние сервисы типа почто-вебы-днсы-хостинги, моно их в дмз попом наружу
нат в этом случае вобще не нужен.. но надо сильно бояться непонятного и хорошо защищаться...
для типовой конторы с плангтоном вполне можно и одним ИПом обойтись..
хотя... резервирование каналов можно намутить.. или - не, не можно, провайдер жеж всё равно один..
локалку за натом если нужно на подсетки попилить
ip-calculator.ru в помощь

зы. я бы на вашем месте фейловер роутер запилил на опенке без вариантов (ipfw в топку)

Как разбираться с несколькими IP на внешнем интерфейсе?

Добавлено: 2017-06-05 12:08:03
xM
Духовитин писал(а): чтобы например юзеры в интернет выходили через один IP, чтобы внешние сервисы работали через другой IP
Элементарно. Привязывайте конкретные IP к конкретным сервисам в их конфигах. IPFW тут, собственно, не нужен.

Как разбираться с несколькими IP на внешнем интерфейсе?

Добавлено: 2017-06-07 13:22:36
Духовитин
xM писал(а):Элементарно. Привязывайте конкретные IP к конкретным сервисам в их конфигах. IPFW тут, собственно, не нужен.
Ну... С одной стороны конечно да, но ведь с другой-то стороны нет!
Сервисы раскиданы по клеткам, тут уже не вижу возможности повесить сервисы из нескольких клеток на один IP. Я на самом деле вгрызся немного в ipfw и нашёл отличную статью, с помощью которой настроил текущие задачи:
Сама статья
Итоговый конфиг:

Код: Выделить всё

#!/bin/sh

FW="/sbin/ipfw -q"

extIF=rl0
intIF=re0

IP_GW=1.1.1.1
IP_1=1.1.1.3
IP_2=1.1.1.4
IP_3=1.1.1.5
IP_4=1.1.1.6
IP_5=1.1.1.7

# Opened ports on each IP
TCP_1=22,25,80,443,465
TCP_2=22,25,465
TCP_3=22
TCP_4=22
TCP_5=22

PRX_PORTS=80,443

# Clear all previous data
${FW} flush
${FW} table all flush

# Table with NAT'ed LANS
${FW} table 1 add 192.168.1.0/24
${FW} table 1 add 192.168.2.0/24
${FW} table 1 add 192.168.3.0/24
${FW} table 1 add 192.168.4.0/24
${FW} table 1 add 192.168.5.0/24
${FW} table 1 add 192.168.6.0/24
${FW} table 1 add 10.0.0.1/32
${FW} table 1 add 10.1.1.0/24
${FW} table 1 add 10.1.2.0/24

# Used forward DNS Servers
${FW} table 2 add 8.8.8.8/32
${FW} table 2 add 8.8.4.4/32

# Table with assigned nat to subnets
${FW} table 3 add 192.168.0.0/27 1
${FW} table 3 add 10.0.0.1/32 1
${FW} table 3 add 10.1.1.2/32 2
${FW} table 3 add 10.1.1.4/32 2
${FW} table 3 add 10.1.1.0/24 1
${FW} table 3 add 10.1.2.0/24 1

${FW} add allow all from any to me 22
${FW} add allow all from me 22 to any

${FW} add check-state

${FW} add allow all from any to any via lo0
${FW} add allow all from any to any via lo1
${FW} add allow all from any to any via lo2
${FW} add deny log all from any to 127.0.0.0/8
${FW} add deny log all from 127.0.0.0/8 to any
${FW} add deny icmp from any to any frag
${FW} add deny icmp from any to 255.255.255.255 in via ${extIF}
${FW} add deny icmp from any to 255.255.255.255 out via ${extIF}
${FW} add deny all from any to me 53 in via ${extIF}
${FW} add deny tcp from any to ${IP_1} not ${TCP_1} in via ${extIF} setup
${FW} add deny tcp from any to ${IP_2} not ${TCP_2} in via ${extIF} setup
${FW} add deny tcp from any to ${IP_3} not ${TCP_3} in via ${extIF} setup
${FW} add deny tcp from any to ${IP_4} not ${TCP_4} in via ${extIF} setup
${FW} add deny tcp from any to ${IP_5} not ${TCP_5} in via ${extIF} setup

# Nat config
${FW} nat 1 config ip ${IP_1}
${FW} nat 2 config ip ${IP_2}
${FW} nat 3 config ip ${IP_3}

${FW} nat 10 config \
        redirect_port tcp 10.1.1.2:25 ${IP_1}:25 \
        redirect_port tcp 10.1.1.2:25 ${IP_2}:25 \
        redirect_port tcp 10.1.1.4:80 ${IP_1}:80 \
        redirect_port tcp 10.1.1.4:443 ${IP_1}:443 \
        redirect_port tcp 10.1.1.2:465 ${IP_1}:465 \
        redirect_port tcp 10.1.1.2:465 ${IP_2}:465

${FW} add skipto 5000 all from any to any out

# Incoming packets section
${FW} add nat 10 all from any to ${IP_1} recv ${extIF}
${FW} add nat 10 all from any to ${IP_2} recv ${extIF}
${FW} add nat 1 all from any to ${IP_1} recv ${extIF}
${FW} add nat 2 all from any to ${IP_2} recv ${extIF}

# outgoing packets section
${FW} add 5000 nat global all from table\(1\) to not me
${FW} add nat tablearg all from 'table(3)' to not me

${FW} add fwd ${IP_GW} all from ${IP_1} to any
${FW} add fwd ${IP_GW} all from ${IP_2} to any

${FW} add allow all from any to any

Как разбираться с несколькими IP на внешнем интерфейсе?

Добавлено: 2017-06-07 15:08:56
xM
Духовитин писал(а): Сервисы раскиданы по клеткам, тут уже не вижу возможности повесить сервисы из нескольких клеток на один IP.
Вы же понимаете, что NAT это решение для бедных.
Вам, при наличии подсети реальных IP, ничто не мешает раздать их по jails и избавиться от NAT за ненадобностью.

Как разбираться с несколькими IP на внешнем интерфейсе?

Добавлено: 2017-06-07 15:38:29
ыть
огребете вы с вашими клетками.. еще и без вимаджа пади..
можно на петлю нацеплять разных сервисов и ипфв фвд-шить на них..
статейка грамотная, сам по младости экстазмировал по нетграфам...
однако, гораздо больше сложных вещей можно сделать просто в пф-е на опенке..

Как разбираться с несколькими IP на внешнем интерфейсе?

Добавлено: 2017-06-08 19:53:17
Духовитин
Клетки без вимаджа, что-то не знаком с ним пока. Но видимо познакомлюсь вскоре.

А отчего огрести можно с клетками? Я постоянно в клетки сажу сервисы mysq, asterisk, web, mail вроде не было особых эксцессов. В чём заключается серьёзный минус клеток?

А то чтобы клеткам по внешнему ip выдать, так этих ип выдали конечно подсеть, но подсеть всего /29, так что особо не пораздаёшь.

Как разбираться с несколькими IP на внешнем интерфейсе?

Добавлено: 2017-06-09 10:53:24
ыть
Духовитин писал(а):А отчего огрести можно с клетками?
http://forum.lissyara.su/viewtopic.php?p=375858#p375858