Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: dnsmasq нужна помощ специалиста  (Прочитано 3565 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн MercilessMir

  • Любитель
  • *
  • Сообщений: 66
    • Просмотр профиля
Re: dnsmasq нужна помощ специалиста
« Ответ #30 : 13 Апреля 2016, 00:41:23 »
AnrDaemon,
Давай не выхлёстывать это в мир, есть косяк, пиши мне.
Да и по делу, зачем столько правил делающих одно и тоже, процессорное время девать некуда? отдай его мне. Я найду куда его деть:)
« Последнее редактирование: 13 Апреля 2016, 00:48:14 от MercilessMir »

Оффлайн vacheslav

  • Автор темы
  • Новичок
  • *
  • Сообщений: 19
    • Просмотр профиля
Re: dnsmasq нужна помощ специалиста
« Ответ #31 : 13 Апреля 2016, 15:40:09 »
Как я понимаю как это работает (iptables):

Я создаю правило
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Оно помещается в iptables-save (временно, до ребута ситемы)
В этом правиле -t указывает имя таблицы (nat), -A POSTROUTING (добавить в цепочку POSTROUTING), -o eth0 указывает имя выходного интерфейса (только не пойму - это куда пакеты выходят, т. е. выходят в интернет или от какого интерфейса они приходят т. е. из локалки), -j MASQUERADE (что такое -j не пойму, а MASQUERADE это типа замена ip адреса пакетов из одной подсети на ip из другой).

iptables-save > /etc/iptables.up.rules
Сохраняю все правила из iptables-save в файл /etc/iptables.up.rules

echo "pre-up iptables-restore < /etc/iptables.up.rules">>/etc/network/interfaces
Создаю строчку в /etc/network/interfaces, которая будет при старте системы прописывать в iptables-restore правила хранящиеся в /etc/iptables.up.rules

И как я понимаю все должно работать, если конечно я имя выходного интерфейса правильно указал.
iptables.up.rules
(Нажмите, чтобы показать/скрыть)

1) Я правильно механику понимаю?

2) На счет строчки no-dhcp-interface=eth0, я так понимаю она указывает на то, чтобы dnsmasq не лез на интерфейс eth0 (пробовал закоментировать, эффекта не заметил).

3) Не смотря на настройки /etc/network/interfaces
(Нажмите, чтобы показать/скрыть)
eth0 получает ip после ребута системы, только после команды dhclient да и то через какое то время.

4) и еще
на интерфейсе eth2 dhcp так и не хочет работать. Что на него может еще влиять?
/etc/dnsmasq.conf
(Нажмите, чтобы показать/скрыть)
Сетевая карта рабочая.

Вопросов конечно уйма, надеюсь подскажите.
« Последнее редактирование: 13 Апреля 2016, 15:45:54 от vacheslav »

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28366
    • Просмотр профиля
Re: dnsmasq нужна помощ специалиста
« Ответ #32 : 13 Апреля 2016, 17:54:52 »
Как я понимаю как это работает (iptables):

Я создаю правило
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Оно помещается в iptables-save (временно, до ребута ситемы)
Оно помещается в цепочку POSTROUTING таблицы nat нетфильтра.

Цитировать
В этом правиле -t указывает имя таблицы (nat), -A POSTROUTING (добавить в цепочку POSTROUTING), -o eth0 указывает имя выходного интерфейса
Да.
Цитировать
(только не пойму - это куда пакеты выходят, т. е. выходят в интернет или от какого интерфейса они приходят т. е. из локалки),
Всё неправильно.
-o указывает, что с этого интерфейса пакеты собрались систему покинуть.
Локалка это, интернет - нетфильтр об этом не то что не знает, ему на это глубоко наплевать. Хоть локальная петля - всё едино.

Цитировать
-j MASQUERADE (что такое -j не пойму,
-j - "jump"…

Цитировать
а MASQUERADE это типа замена ip адреса пакетов из одной подсети на ip из другой).
Нет. Цель MASQUERADE - это замена адреса отправителя пакета на адрес интерфейса, с которого пакет уходит.
Процесс долгий (сначала надо определить, какой там адрес), поэтому, если адрес статический лучше использовать цель SNAT, указав адрес явно.

Цитировать
iptables-save > /etc/iptables.up.rules
Сохраняю все правила из iptables-save в файл /etc/iptables.up.rules
Нет. Сохраняете все активные правила netfilter… iptables-save это просто инстумент, как и iptables.

Цитировать
echo "pre-up iptables-restore < /etc/iptables.up.rules">>/etc/network/interfaces
Создаю строчку в /etc/network/interfaces, которая будет при старте системы прописывать
Да. Кстати, "<" лишнее.
Цитировать
в iptables-restore
iptables-restore это просто инструмент. Всё равно что сказать "прописал в молоток гвозди".

Цитировать
И как я понимаю все должно работать, если конечно я имя выходного интерфейса правильно указал.
Прежде чем говорить "всё должно работать", надо пойти и проверить, что именно наворотили твои команды в системе.

Цитировать
iptables.up.rules
(Нажмите, чтобы показать/скрыть)
Тебе уже указали на проблему с этим набором. Проверь ещё раз.

Цитировать
1) Я правильно механику понимаю?
Почти.

Цитировать
2) На счет строчки no-dhcp-interface=eth0, я так понимаю она указывает на то, чтобы dnsmasq не лез на интерфейс eth0 (пробовал закоментировать, эффекта не заметил).
Я не мастер в dnsmasq, в ISC-DHCP такая команда бы означала, что надо игнорировать запросы DHCP на этом интерфейсе.

Цитировать
3) Не смотря на настройки /etc/network/interfaces
(Нажмите, чтобы показать/скрыть)
А почему у вас настройки сменились с начала топика?…

Цитировать
eth0 получает ip после ребута системы, только после команды dhclient да и то через какое то время.
Надо смотреть, что там происходит.
Повесте монитор на eth0/dhcp и смотрите после загрузки системы.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн vacheslav

  • Автор темы
  • Новичок
  • *
  • Сообщений: 19
    • Просмотр профиля
Re: dnsmasq нужна помощ специалиста
« Ответ #33 : 13 Апреля 2016, 19:02:22 »
Спасибо большое за разъяснения по iptablees. :)

Правило исправлю или его вообще стоит переделать через SNAT.
А записывается оно аналогично?
iptables -t nat -A POSTROUTING -o eth1 -j SNAT
или вообще указать статический адрес, а не eth1

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28366
    • Просмотр профиля
Re: dnsmasq нужна помощ специалиста
« Ответ #34 : 13 Апреля 2016, 21:33:40 »
Прежде чем что-то исправлять, поймите, что именно вы делаете.
А то конфиги туда-сюда раскачиваете, а потом "ойнеработает".
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн vacheslav

  • Автор темы
  • Новичок
  • *
  • Сообщений: 19
    • Просмотр профиля
Re: dnsmasq нужна помощ специалиста
« Ответ #35 : 13 Апреля 2016, 22:59:22 »
Цитировать
А почему у вас настройки сменились с начала топика?…
переустанавливал систему, решил привести к более стандартному виду, чтобы легче ориентироваться.
« Последнее редактирование: 13 Апреля 2016, 23:06:25 от vacheslav »

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28366
    • Просмотр профиля
Re: dnsmasq нужна помощ специалиста
« Ответ #36 : 14 Апреля 2016, 01:11:16 »
А с чего вы взяли, что тут есть какие-то стандарты?…
Для меня вот нормально, что eth0 - LAN.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн vacheslav

  • Автор темы
  • Новичок
  • *
  • Сообщений: 19
    • Просмотр профиля
Re: dnsmasq нужна помощ специалиста
« Ответ #37 : 14 Апреля 2016, 06:40:29 »
А с чего вы взяли, что тут есть какие-то стандарты?…
Для меня вот нормально, что eth0 - LAN.
Да это понятно, что кому как удобнее, то так и делает, вот и я решил сделать удобнее для себя :)

 

Страница сгенерирована за 0.104 секунд. Запросов: 23.