URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 61672
[ Назад ]

Исходное сообщение
"Несколько реальных IP на сервере"

Отправлено dalex , 10-Ноя-05 10:22 
Есть сервер на ASPLinux 9.2.

К серверу подключены сетевые eth1 (192.168.0.1), eth2 (192.168.0.2), eth3 (192.168.0.3) и так далее.

К eth0 подключен модем с PPPoE соединением, т.е. есть ещё ppp0 ($EXTIP). IP динамический.

К каждой сетевой подключен компьютер с WinXP, у каждого компьютера локальный ip-адрес, т.е. к eth1 подключен комп с IP 192.168.0.101, к eth2 - 192.168.0.102, к eth2 - 192.168.0.103.

В наличии есть подсетка реальных адресов того же провайдера, настроенной на нас.

На сервере установлен squid.

Задача: сделать так, что бы клиентские машины с XP могли ходить в инет через NAT и через прокси КАЖДЫЙ ПОД СВОИМ IP ИЗ ПОДСЕТКИ РЕАЛЬНЫХ АДРЕСОВ.

Я далеко не гуру, поэтому почесав репу в голову пришёл такой вариант:

- поднимаем на каждый IP из подсетки свой интерфейс ppp0:0, ppp0:1, ppp0:2 и т.д., прописываем им эти IP.
- в iptables делаем:

    -A POSTROUTING -s 192.168.0.101/255.255.255.255 -j SNAT --to-source X.X.X.X1
    -A POSTROUTING -s 192.168.0.102/255.255.255.255 -j SNAT --to-source X.X.X.X2
    -A POSTROUTING -s 192.168.0.103/255.255.255.255 -j SNAT --to-source X.X.X.X3
    ...
    (X.X.X.X1-3 - реальные IP из подсетки)

- в squid'e:

    acl machine1 src 192.168.0.101/255.255.255.255
    acl machine2 src 192.168.0.102/255.255.255.255
    acl machine3 src 192.168.0.103/255.255.255.255
    ...
    tcp_outgoing_address X.X.X.X1 machine1
    tcp_outgoing_address X.X.X.X2 machine2
    tcp_outgoing_address X.X.X.X3 machine3
    ...    

-     делаем
    route add -host 192.168.0.101 dev eth1
    route add -host 192.168.0.102 dev eth2
    route add -host 192.168.0.103 dev eth3
    ...


Вроде так делал и ничего не получилось. В чём ошибка?  


Содержание

Сообщения в этом обсуждении
"Несколько реальных IP на сервере"
Отправлено Koba_LTD , 10-Ноя-05 10:59 
>Есть сервер на ASPLinux 9.2.
>
>К серверу подключены сетевые eth1 (192.168.0.1), eth2 (192.168.0.2), eth3 (192.168.0.3) и так
>далее.
>
>К eth0 подключен модем с PPPoE соединением, т.е. есть ещё ppp0 ($EXTIP).
>IP динамический.
>
>К каждой сетевой подключен компьютер с WinXP, у каждого компьютера локальный ip-адрес,
>т.е. к eth1 подключен комп с IP 192.168.0.101, к eth2 -
>192.168.0.102, к eth2 - 192.168.0.103.
>
>В наличии есть подсетка реальных адресов того же провайдера, настроенной на нас.
>
>
>На сервере установлен squid.
>
>Задача: сделать так, что бы клиентские машины с XP могли ходить в
>инет через NAT и через прокси КАЖДЫЙ ПОД СВОИМ IP ИЗ
>ПОДСЕТКИ РЕАЛЬНЫХ АДРЕСОВ.
>
>Я далеко не гуру, поэтому почесав репу в голову пришёл такой вариант:
>
>
> - поднимаем на каждый IP из подсетки свой интерфейс ppp0:0, ppp0:1,
>ppp0:2 и т.д., прописываем им эти IP.
> - в iptables делаем:
>
> -A POSTROUTING -s 192.168.0.101/255.255.255.255 -j SNAT --to-source X.X.X.X1
> -A POSTROUTING -s 192.168.0.102/255.255.255.255 -j SNAT --to-source X.X.X.X2
> -A POSTROUTING -s 192.168.0.103/255.255.255.255 -j SNAT --to-source X.X.X.X3
> ...
> (X.X.X.X1-3 - реальные IP из подсетки)
>
> - в squid'e:
>
> acl machine1 src 192.168.0.101/255.255.255.255
> acl machine2 src 192.168.0.102/255.255.255.255
> acl machine3 src 192.168.0.103/255.255.255.255
> ...
> tcp_outgoing_address X.X.X.X1 machine1
> tcp_outgoing_address X.X.X.X2 machine2
> tcp_outgoing_address X.X.X.X3 machine3
> ...
>
> -  делаем
> route add -host 192.168.0.101 dev eth1
> route add -host 192.168.0.102 dev eth2
> route add -host 192.168.0.103 dev eth3
> ...
>
>
>Вроде так делал и ничего не получилось. В чём ошибка?

Вопервых если утебя динамический IP то это не SNAT а маскарад
ну и сответственно в сквыде тоже димам. адреса.



"Несколько реальных IP на сервере"
Отправлено dalex , 10-Ноя-05 11:03 
>>Вроде так делал и ничего не получилось. В чём ошибка?
>
>Вопервых если утебя динамический IP то это не SNAT а маскарад
>ну и сответственно в сквыде тоже димам. адреса.


IP выдается динамически для ppp0!  Но, я у провайдера купил подсеть. Про подсеть написано же выше, и эта подсеть само-собой со статическими адресами.


"Несколько реальных IP на сервере"
Отправлено Koba_LTD , 10-Ноя-05 13:27 
>>>Вроде так делал и ничего не получилось. В чём ошибка?
>>
>>Вопервых если утебя динамический IP то это не SNAT а маскарад
>>ну и сответственно в сквыде тоже димам. адреса.
>
>
>IP выдается динамически для ppp0!  Но, я у провайдера купил подсеть.
>Про подсеть написано же выше, и эта подсеть само-собой со статическими
>адресами.


1) Что у тебя в цепочке FORWARD
2) проверь включенли форвард вообще.
3) а не прощели в таком случаи прокинуть просто реальные ip на внутренние компы


"Несколько реальных IP на сервере"
Отправлено dalex , 10-Ноя-05 13:53 
>1) Что у тебя в цепочке FORWARD

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination        
RH-Firewall-1-INPUT  all  --  anywhere             anywhere            


>2) проверь включенли форвард вообще.

Включен конечно. При раскладе когда всё идёт через 1 ip - работает.

>3) а не прощели в таком случаи прокинуть просто реальные ip на
>внутренние компы

Уже задавался этим вопросом :-)  Но, вообще не хотелось бы - давать доступ напрямую XP в инет, даже в урезанном виде. Мне как-то с локальными ip спокойнее. Или может быть это паранойя?

Есть подозрение, что настройки проблемы были из-за неправильной маршрутизации подсетки. Надо ещё раз с такой конфирурацией попробовать, раз  по технической части никто ошибок не нашёл :-)


"Несколько реальных IP на сервере"
Отправлено Iv , 10-Ноя-05 13:21 
>Есть сервер на ASPLinux 9.2.
>
>К серверу подключены сетевые eth1 (192.168.0.1), eth2 (192.168.0.2), eth3 (192.168.0.3) и так
>далее.

А разве можно чтоб несколько сетевых интерфейсов смотрели в одну подсеть??? Или хотя бы объясние непонятливому: какую маску вставить, чтоб 192,168,0,1 и 192,168,0,2 оказались в разных подсетях???


"Несколько реальных IP на сервере"
Отправлено dalex , 10-Ноя-05 13:38 
>А разве можно чтоб несколько сетевых интерфейсов смотрели в одну подсеть???

Лично для себя не вижу никаких препятствий :-)

>Или
>хотя бы объясние непонятливому: какую маску вставить, чтоб 192,168,0,1 и 192,168,0,2
>оказались в разных подсетях???

255.255.255.255


"Несколько реальных IP на сервере"
Отправлено aliv , 10-Ноя-05 14:00 
>>А разве можно чтоб несколько сетевых интерфейсов смотрели в одну подсеть???
>
>Лично для себя не вижу никаких препятствий :-)
>
>>Или
>>хотя бы объясние непонятливому: какую маску вставить, чтоб 192,168,0,1 и 192,168,0,2
>>оказались в разных подсетях???
>
>255.255.255.255

тогда 192.168.0.1 и 192.168.0.101 и т.д. в разных подсетях? о какой маршрутизации речь?


"Несколько реальных IP на сервере"
Отправлено dalex , 10-Ноя-05 14:04 
>>>Или
>>>хотя бы объясние непонятливому: какую маску вставить, чтоб 192,168,0,1 и 192,168,0,2
>>>оказались в разных подсетях???
>>
>>255.255.255.255
>
>тогда 192.168.0.1 и 192.168.0.101 и т.д. в разных подсетях? о какой маршрутизации
>речь?

А что в таком случае делают? Повторюсь, что я чайник.


"Несколько реальных IP на сервере"
Отправлено llelik , 10-Ноя-05 19:50 
>>>>Или
>>>>хотя бы объясние непонятливому: какую маску вставить, чтоб 192,168,0,1 и 192,168,0,2
>>>>оказались в разных подсетях???
>>>
>>>255.255.255.255
>>
>>тогда 192.168.0.1 и 192.168.0.101 и т.д. в разных подсетях? о какой маршрутизации
>>речь?
>
>А что в таком случае делают? Повторюсь, что я чайник.
курят доки или не лезут в это дело совсем


"Несколько реальных IP на сервере"
Отправлено dalex , 11-Ноя-05 09:12 
>>А что в таком случае делают? Повторюсь, что я чайник.
>курят доки или не лезут в это дело совсем

Вы наверное с обкурки доков на этом сайте сидите?

Мой вариант таки работает. Всем спасибо. Просто подсетка не работала.