Здраствуйте, столкнулся с проблемой, точнее никогда не связывался и незнаю что и как надо делать. Провайдер выделил мне диапазон IP 82.119.xxx.0/24на машине Linux ядро 2.6.15 iptables 1.3.5
eth0 и eth1 где eth0 внешний интерф. с адресом 82.119.ххх.1
eth1 внутренний с адресом 192.168.0.1 надо некоторым мышина присвоить внешние IP но так, чтоб на етихже машинах их и прописатьлюди, пожалуйста подскажите пожалуйста что мне надо сделать, и что написать в файлике rc.firewall т.е. какие правила задавать для iptables
>Здраствуйте, столкнулся с проблемой, точнее никогда не связывался и незнаю что и
>как надо делать. Провайдер выделил мне диапазон IP 82.119.xxx.0/24
>
>на машине Linux ядро 2.6.15 iptables 1.3.5
>eth0 и eth1 где eth0 внешний интерф. с адресом 82.119.ххх.1
>eth1 внутренний с адресом 192.168.0.1 надо некоторым мышина присвоить внешние IP но
>так, чтоб на етихже машинах их и прописать
>
>люди, пожалуйста подскажите пожалуйста что мне надо сделать, и что написать в
>файлике rc.firewall т.е. какие правила задавать для iptablesв файрволе ничего делать не надо
пропиши на компах внешние ип, шлюзом поставь внешний ип сервера
думаю все заработает
>
>в файрволе ничего делать не надо
>пропиши на компах внешние ип, шлюзом поставь внешний ип сервера
>думаю все заработаеттогда поблема в другом как биллинг будет контролировать ети машины?
не заработало... или руки кривые...
>>
>>в файрволе ничего делать не надо
>>пропиши на компах внешние ип, шлюзом поставь внешний ип сервера
>>думаю все заработает
>
>тогда поблема в другом как биллинг будет контролировать ети машины?
>
>не заработало... или руки кривые...Один из способов...
Просишь провайдера выдать тебе еще один реальный адрес на гейт
На внутреннем интерфейсе ставишь алиасом 82.119.xxx.1/24
Провайдера просишь смаршрутизировать подсеть 82.119.xxx.1/24 через этот выданный адрес.
Раздаешь реальные Ипы внутри сети.
ЗЫ. (При желании, если надо чтобы машины с серыми адресами и реальными видели друг-друга, прописываешь для этого статический маршрут).Второй способ...заключается в разбивке твоей подсети /24 на 2 подсети...Если не проканает первый, опишу
сори, ошибся в строке "Провайдера просишь смаршрутизировать подсеть 82.119.xxx.1/24 через этот выданный адрес." подсеть конечно 82.119.xxx.0/24.
Еще, может я написал несколько непонятно, тот адрес, что выдаст провайдер, вешаешь на внешний интерфейс.
>сори, ошибся в строке "Провайдера просишь смаршрутизировать подсеть 82.119.xxx.1/24 через этот выданный
>адрес." подсеть конечно 82.119.xxx.0/24.
>Еще, может я написал несколько непонятно, тот адрес, что выдаст провайдер, вешаешь
>на внешний интерфейс.Спасибо, понял, да ват провайдер одного ип не даст.
лутше расскажм про второй способ.
>>сори, ошибся в строке "Провайдера просишь смаршрутизировать подсеть 82.119.xxx.1/24 через этот выданный
>>адрес." подсеть конечно 82.119.xxx.0/24.
>>Еще, может я написал несколько непонятно, тот адрес, что выдаст провайдер, вешаешь
>>на внешний интерфейс.
>
>Спасибо, понял, да ват провайдер одного ип не даст.
>
>лутше расскажм про второй способ.попроси сеть /30 - один ип тебе другой как шлюз на првайдера и попроси смашрутизировать сеть /30 через твой ип мз сети /30
>>>сори, ошибся в строке "Провайдера просишь смаршрутизировать подсеть 82.119.xxx.1/24 через этот выданный
>>>адрес." подсеть конечно 82.119.xxx.0/24.
>>>Еще, может я написал несколько непонятно, тот адрес, что выдаст провайдер, вешаешь
>>>на внешний интерфейс.
>>
>>Спасибо, понял, да ват провайдер одного ип не даст.
>>
>>лутше расскажм про второй способ.
>
>попроси сеть /30 - один ип тебе другой как шлюз на првайдера
>и попроси смашрутизировать сеть /30 через твой ип мз сети /30
>
провайдер если ласт, то полную подсеть а зачем мне ещё 254 ип? темболее это не бесплатно...
>>>>сори, ошибся в строке "Провайдера просишь смаршрутизировать подсеть 82.119.xxx.1/24 через этот выданный
>>>>адрес." подсеть конечно 82.119.xxx.0/24.
>>>>Еще, может я написал несколько непонятно, тот адрес, что выдаст провайдер, вешаешь
>>>>на внешний интерфейс.
>>>
>>>Спасибо, понял, да ват провайдер одного ип не даст.
>>>
>>>лутше расскажм про второй способ.
>>
>>попроси сеть /30 - один ип тебе другой как шлюз на првайдера
>>и попроси смашрутизировать сеть /30 через твой ип мз сети /30
>>
>
>
> провайдер если ласт, то полную подсеть а зачем мне ещё 254
>ип? темболее это не бесплатно...http://www.opennet.me/openforum/vsluhforumID1/68387.html
http://www.opennet.me/openforum/vsluhforumID1/29011.htmlПочитай сначала это. Может какой из этих вариантов подойдет.
>>>>>сори, ошибся в строке "Провайдера просишь смаршрутизировать подсеть 82.119.xxx.1/24 через этот выданный
>>>>>адрес." подсеть конечно 82.119.xxx.0/24.
>>>>>Еще, может я написал несколько непонятно, тот адрес, что выдаст провайдер, вешаешь
>>>>>на внешний интерфейс.
>>>>
>>>>Спасибо, понял, да ват провайдер одного ип не даст.
>>>>
>>>>лутше расскажм про второй способ.
>>>
>>>попроси сеть /30 - один ип тебе другой как шлюз на првайдера
>>>и попроси смашрутизировать сеть /30 через твой ип мз сети /30
>>>
>>
>>
>> провайдер если ласт, то полную подсеть а зачем мне ещё 254
>>ип? темболее это не бесплатно...
>
>http://www.opennet.me/openforum/vsluhforumID1/68387.html
>http://www.opennet.me/openforum/vsluhforumID1/29011.html
>
>Почитай сначала это. Может какой из этих вариантов подойдет.
прочитал, у меня Линух а там под БСД :(
Нужно использовать средство SNAT.iptables -t nat -A POSTROUTING -s 192.168.0.1 -o eth0 -j SNAT --to-source 82.119.xxx.2
И так далее. Добавляете столько строк сколько нужно, меняя только внутренние адреса и внешние соответственно.
Попробуйте так.
>Нужно использовать средство SNAT.
>
>iptables -t nat -A POSTROUTING -s 192.168.0.1 -o eth0 -j SNAT --to-source
>82.119.xxx.2
>
>И так далее. Добавляете столько строк сколько нужно, меняя только внутренние адреса
>и внешние соответственно.
>
>Попробуйте так.
Спасибо, но этот способ не подходит.
Надо чтоб у клиента сразу внешний прописовался...
>>Нужно использовать средство SNAT.
>>
>>iptables -t nat -A POSTROUTING -s 192.168.0.1 -o eth0 -j SNAT --to-source
>>82.119.xxx.2
>>
>>И так далее. Добавляете столько строк сколько нужно, меняя только внутренние адреса
>>и внешние соответственно.
>>
>>Попробуйте так.
>
>
>Спасибо, но этот способ не подходит.
>Надо чтоб у клиента сразу внешний прописовался...
Тогда делаешь так: 1)назначаешь машинам внешние ip, 2) в качестве шлюза указываешь внутренний ip твоего сервера, 3) Серверу нужно указать, что хосты, которым назначены внешние ip находятся на -eth 1. Это делается командой route (мы упустили это действие первый раз, поэтому трафик уходил за пределы шлюза, а когда он возвращался на него, то шлюз не знал куда направить трафик). 4) в iptables должно быть $IPTABLES FORWARD -P ALLOWВроде должно сработать...
>>>Нужно использовать средство SNAT.
>>>
>>>iptables -t nat -A POSTROUTING -s 192.168.0.1 -o eth0 -j SNAT --to-source
>>>82.119.xxx.2
>>>
>>>И так далее. Добавляете столько строк сколько нужно, меняя только внутренние адреса
>>>и внешние соответственно.
>>>
>>>Попробуйте так.
>>
>>
>>Спасибо, но этот способ не подходит.
>>Надо чтоб у клиента сразу внешний прописовался...
>
>
>Тогда делаешь так: 1)назначаешь машинам внешние ip, 2) в качестве шлюза указываешь
>внутренний ip твоего сервера, 3) Серверу нужно указать, что хосты, которым
>назначены внешние ip находятся на -eth 1. Это делается командой route
>(мы упустили это действие первый раз, поэтому трафик уходил за пределы
>шлюза, а когда он возвращался на него, то шлюз не знал
>куда направить трафик). 4) в iptables должно быть $IPTABLES FORWARD -P
>ALLOW
>
>Вроде должно сработать...
опиши строку с командой route
>>>>Нужно использовать средство SNAT.
>>>>
>>>>iptables -t nat -A POSTROUTING -s 192.168.0.1 -o eth0 -j SNAT --to-source
>>>>82.119.xxx.2
>>>>
>>>>И так далее. Добавляете столько строк сколько нужно, меняя только внутренние адреса
>>>>и внешние соответственно.
>>>>
>>>>Попробуйте так.
>>>
>>>
>>>Спасибо, но этот способ не подходит.
>>>Надо чтоб у клиента сразу внешний прописовался...
>>
>>
>>Тогда делаешь так: 1)назначаешь машинам внешние ip, 2) в качестве шлюза указываешь
>>внутренний ip твоего сервера, 3) Серверу нужно указать, что хосты, которым
>>назначены внешние ip находятся на -eth 1. Это делается командой route
>>(мы упустили это действие первый раз, поэтому трафик уходил за пределы
>>шлюза, а когда он возвращался на него, то шлюз не знал
>>куда направить трафик). 4) в iptables должно быть $IPTABLES FORWARD -P
>>ALLOW
>>
>>Вроде должно сработать...
>
>все сделал
route add -host xxx.xxx.xxx.xxx eth1
связь с сервером есть видит и внутренний и внешний ИП сервера инета не видит, и с инета не видно
>все сделал
>
>route add -host xxx.xxx.xxx.xxx eth1
>
>связь с сервером есть видит и внутренний и внешний ИП сервера инета
>не видит, и с инета не видно
Не могу сказать в чем причина, так как не вижу полной картины. Я бы назначил машинам внутренние ИП, а на шлюзе организовал бы НАТ. Не понимаю, зачем назначать машинам внешние ИП.Возможно не работает предыдущая схема по следующей причине:
На компах реальные ИП, а шлюзом у них прописан ИП внутренний.
Что происходит, когда комп захочет обратиться к узлу из Интернета.1) Пакет готов к отправке. В заголовок прописывается адрес назначения.
2) Комп обнаруживает, что хост находится в другой сети, поэтому необходимо отправить пакет на default gateway
3) Шлюз по умолчанию у нас с внутренним ИП (т.е. не находится с узлом отправителя в одной подсети).
4) Комп не может отправить пакет.ИМХО так.
>
>опиши строку с командой route
команда route позволяет вносить изменения в таблицу маршрутизации. Выполняется только из под root.пишем
route add 82.119.xxx.3 eth1
Теперь ядро "будет знать", что пакет, адресованный узлу 82.119.xxx.3 нужно направить на интерфейс eth1
>>
>>опиши строку с командой route
>
>
>команда route позволяет вносить изменения в таблицу маршрутизации. Выполняется только из под
>root.
>
>пишем
>
>route add 82.119.xxx.3 eth1
>
>Теперь ядро "будет знать", что пакет, адресованный узлу 82.119.xxx.3 нужно направить на
>интерфейс eth1
неполучается
>>>
>>>опиши строку с командой route
>>
>>
>>команда route позволяет вносить изменения в таблицу маршрутизации. Выполняется только из под
>>root.
>>
>>пишем
>>
>>route add 82.119.xxx.3 eth1
>>
>>Теперь ядро "будет знать", что пакет, адресованный узлу 82.119.xxx.3 нужно направить на
>>интерфейс eth1
>
>
>неполучается
Посмотри мой ответ под номером 17
>>>>
>>>>опиши строку с командой route
>>>
>>>
>>>команда route позволяет вносить изменения в таблицу маршрутизации. Выполняется только из под
>>>root.
>>>
>>>пишем
>>>
>>>route add 82.119.xxx.3 eth1
>>>
>>>Теперь ядро "будет знать", что пакет, адресованный узлу 82.119.xxx.3 нужно направить на
>>>интерфейс eth1
>>
>>
>>неполучается
>
>
>Посмотри мой ответ под номером 17
Спасибо, решил проблему с помощью Провдо-моста
Одним словом решил проблему с помощью этих статей:http://www.sjdjweis.com/linux/proxyarp/
и
http://www.opennet.me/tips/info/923.shtmlНо теперь хочется чтоб машины с адресами 192.168.0.2 и т.д. видели машины у которых внешние адреса и наоборот