1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.

Маршрутизация в Линуксе

Тема в разделе "Софт", создана пользователем firefly, 13.04.04.

  1. firefly

    firefly Активный участник

    1.955
    0
  2. paraNoId

    paraNoId Участник

    236
    0
    А уверен ли ты, что в твоем конкретном случае надо что-то дополнительно делать с роутингом? ;) Какие пакетики собираешься роутить?
    Тебе нужен инет в локаленке. Т.е. http/https, ftp, smtp, pop3/imap, ну может, icq и еще что-нибудь. Лучше решать это на application-level. По-русски говоря - выключаем роутинг пакетов из локалки в большой инет и ставим прокси для нужных протоколов.
    squid - web, ftp, icq и все остальное что может ходить через прокси.
    (sendmail|exim|postfix) - smtp
    pop3/imap4 какой-там-у-тебя демон - ну, понятно, для чего.
    bind - ясно.
    Файроволом закрываем все, кроме необходимого. Для начальной настройки всего этого семи пядей не надо.
    Ты, конкретику давай. Чего установлено, чего делал, чего не получилось. Сквид-то настроил, локалка в инет ходит?

    P.S. Маскарад и нат, в данном случае, скорее вреден, чем полезен.
     
  3. firefly

    firefly Активный участник

    1.955
    0


    Настроено:
    1. Физическое: eth0 - в провайдера. dhcp. Через него vpn с провайдером (статический ip) ppp0. Через ppp0 поднят ppp1 - vpn соединение со статическим ip до спутникового провайдера. Все запросы через ppp1 отвечаются через интерфейс pentanet0 (спутниковая сетевуха, статичный ip). далее, eth1 - локальная сетка 192.168.0.0/24 адреса раздаются через dhcp (с горем пополам настроил). Статичные не использовал, т.к. машин 50 штук и дирлектор с ноутбуком :) Это все работает.
    2. Софтверное: вышеуказанный dhcp сервер для локалки и squid.
    Со сквидом сложнее. Вот с ним проблема. Все, что от него добился, так это "Page faults with physical i/o: 421" Т.е. не работает :)
    Из локалки 192.168.0.1 (сервер-мученник) пингуется. Остальное, понятное дело нет.
    Мне бы пример squid.conf бы :) Заведомо рабочий :) Т.к. в 100-килобайтном примере идущим в комплекте я разобраться не могу.
    Мне собственно надо чтобы юзера 192.168.0.0/24 с eth1 ходили через ppp1 в инет, а ответы им приходили через pentanet0. Из интернета сервер видеть не надо, т.к. на нем не будет никаких доп. сервисов. Он только шлюз. Потом к сквиду статистику прикручу.
     
  4. paraNoId

    paraNoId Участник

    236
    0
    Неа, работает. Грубо говоря, это значит, что сквиду хочется больше памяти, чем ему дали. Лечится. Пока забей.

    Он из коробки рабочий. Тебе просто надо разрешить доступ из локалной сети. Две строчки всего дописать:
    1) Ищешь в squid.conf место, где определяются acl`и (строки вида "acl all src 0.0.0.0/0.0.0.0")
    и дописываешь там acl для своей сетки:
    acl my_localnet src 192.168.0.0/255.255.255.0
    2) Ищешь место где разрешается/запрещается доступ по acl`м (строки вида "http_access allow localhost"). И пишешь там еще одну строчку:
    http_access allow localhost
    http_access allow my_localnet ## << Вот эту в это место.
    http_access deny all
    3) Говоришь
    service squid reload
    4) Пробуешь, что вышло. Смотришь cache.log, на предмет все ли сквиду понравилось, не напортачил ли чего.
    5) Прописываешь у клиентов себя в качестве прокси и пробуешь.
     
  5. firefly

    firefly Активный участник

    1.955
    0
    Поправил размер кеша. Был 8мб. Поставил 100мб. Теперь "Page faults with physical i/o: 415" И еще ругается на visible_hostname. Но он уменя закоментирован.
     
  6. RadioShark

    RadioShark Гость



    Хе-хе, 8мб - это не размер кэша. Это что-то вроде начальный размер памяти для хранения внутренних данных (точно не помню). Указав 100мб, ты откусил наверно всю память, вот у тебя и посыпались page faults.
     
  7. firefly

    firefly Активный участник

    1.955
    0
    Ладно прикалываться :) Я это понял. :) Вылечил уже. Теперь запускается без ругани. Но не работает :) Пролисал вышеуказанное в squid.conf. Побарабану. Запускается, но локалка не ходит в инет :) В IE прописан прокси 192.168.0.1:3128
    p.s. Squid поставил самый последний стабильный 2.5.STABLE5
     
  8. paraNoId

    paraNoId Участник

    236
    0
    IE как ругается, что пишет?
    Выясни работает ли сквид локально. Набери в консоли:
    # http_proxy="http://192.168.0.1:3128/" lynx http://forum.volgograd.ru
    Если все ок, то смотри как у тебя файервол настроен, мож он клиентов не пускает. Еще раз проверь чего в конфиг написал.
    Если и локально не работает, говори как ругается.

    Слушай, а твой провайдер тебя напрямую пускает, или только через свой прокси? Это влияет (см. cache_peer).
     
  9. firefly

    firefly Активный участник

    1.955
    0
    Набрал в консоли вышеуказанное.

    Внимание! Не удается установить соединение с удаленной машиной.
    Идет поиск 192.168.0.1:3128
    192.168.0.1:3128
    Устанавливается HTTP соединение с 192.168.0.1:3128
    Внимание! Не удается установить соединение с удаленной машиной.
    lynx: Нет доступа к начальному файлу http://forum.volgograd.ru/

    Вот так. Я так понимаю сквид просто напросто не запускается. Он у меня синсалирован в /usr/local/squid. запускаю собственно /usr/local/squid/sbin/squid Он молча кряхтит винтом и опять командная строка. Ничего не пишет.
     
  10. paraNoId

    paraNoId Участник

    236
    0
    Ничего не пишет? Даже логи? И вообще - эттызря... Сразу компилить. Эксперименты оставь на потом, когда разберешься. Он ж, по умолчанию, конфиги-логи-кэши в других местах держать будет. Опять же с какими опция собирал, кэш создал/проинитил?

    Мой совет. Вернись к дистрибутивному сквиду. Поставь его rpm`ом (или yum`ом если он у тебя есть). Отредактируй конфиг и запусти штатным для твоего дистрибутива способом. Другими словами:

    # rpm -ivh squid-<какая-там-у-тебя-версия>.rpm (или yum install squid)
    # vim /etc/squid/squid.conf
    # chkconfig squid on
    # service squid restart

    И после, посмотри в /var/log/squid/cache.log, нет ли там ругани. И написано ли там "Ready to serve requests."
     
  11. firefly

    firefly Активный участник

    1.955
    0
    Вобщем сквида я победил :beer:
    Локалка в инет ходит, но мее-е-е-е-едленно. Страницы по 2 минуты открываются. С чем связано может быть?
     
  12. Lord_Jadeite

    Lord_Jadeite Участник

    415
    1
    Возможно, DNS?
     
  13. firefly

    firefly Активный участник

    1.955
    0
    DNS слетает секунд через 30 после подключения.
    Вообще пинг до провайдера - 72% пакетов теряется :(
     
  14. paraNoId

    paraNoId Участник

    236
    0

    В чем проявляется "слет"?

    Карта/кабель/джеки и т.д. - первое что приходит на ум. Поменяй карточку, для начала, посмотри шнурки.
    Что говорит ip -s li show ethX? Ошибок много?
     
  15. firefly

    firefly Активный участник

    1.955
    0
    "Слет" проявляется в том, что route выдает не имена, а ip.
    А ошибок ниодной ни на eth0 ни на ppp0
     
  16. firefly

    firefly Активный участник

    1.955
    0
    dns - фигня. Поборол.
    При подключении из винды все работает на ура. Так что что-то в линуксе.
    Не могу понять... Соединение-то происходит. Интернет пингуется. Только приходят в ответ только 3,6,9,12,15,18... пакеты, а не все. т.е. 2/3 пакетов теряется. Чего делать - ума не приложу. В статистике ошибок на карту - ошибок ноль.