Содержание

Изменение имени сетевого интерфейса

Для Debian (и соответственно Ubuntu) подходит такой рецепт:

в файле 70-persistent-net.rules, находящемся по адресу /etc/udev/rules.d/70-persistent-net.rules, в спецификации нужной сетевой карты изменяем в конце строки параметр NAME=, вписывая туда нужное имя интерфейса для сетевой карты с нужным MAC-адресом.

Например вместо NAME=eth2NAME=eth1.

IGMP PROXY

Код:

wget http://downloads.sourceforge.net/project/igmpproxy/igmpproxy/0.1/igmpproxy-0.1.tar.gz?use_mirror=sunet
tar zxf igmpproxy-0.1.tar.gz
cd igmpproxy-0.1

Затем скомпилируйте и установите программу

Код:

./configure && make && make install

Теперь надо создать и отредактировать конфигурационный файл для программы, пример ниже

Код:

vim /etc/igmpproxy.conf

Содержимое конфигурационного файла

Код:

 ##------------------------------------------------------
 ## Enable Quickleave mode (Sends Leave instantly)
 ## Эту строчку раскомментируют только в том случае,
 ## если внути всего лишь один клиент IP TV
 ##------------------------------------------------------
 #quickleave
 
 ##------------------------------------------------------
 ## Configuration for eth0 (Upstream Interface)
 ## Здесь указаны параметры для публичного интерфейса,
 ## на который придет поток от провайдера
 ## и указаны сети, с которых возможно будут подключаться клиенты
 ##------------------------------------------------------
 phyint eth0 upstream ratelimit 0 threshold 1
 altnet 10.0.0.0/8
 altnet 172.20.20.0/24
 altnet 192.168.0.0/24
 
 ##------------------------------------------------------
 ## Configuration for eth1 (Downstream Interface)
 ## Типовая конфигурация для внутреннего интерфейса
 ## смотрящего в домашнюю сеть
 ##------------------------------------------------------
 phyint eth1 downstream ratelimit 0 threshold 1

После создания конфига запускаем демона командой

Код:

/usr/local/sbin/igmpproxy /etc/igmpproxy.conf

Добавляем в автозагрузку

igmpproxy /etc/igmpproxy.conf & в /etc/rc.local

Удаление старых ядер

Сначала нужно узнать, какое ядро используется в Ubuntu.

uname -r

Эта команда выведет версию текущего ядра Linux. Его нельзя удалять.

root@server:~$ uname -r
3.0.0-25-generic

Далее нужно вывести список всех пакетов с установленными ядрами.

dpkg --list | grep linux-image

В результате мы увидим что-то подобное:

root@server:~$ dpkg --list | grep linux-image
ii  linux-image-3.0.0-14-generic   3.0.0-14.23   Linux kernel image for version 3.0.0 on x86/x86_64
ii  linux-image-3.0.0-15-generic   3.0.0-15.26   Linux kernel image for version 3.0.0 on x86/x86_64
ii  linux-image-3.0.0-16-generic   3.0.0-16.29   Linux kernel image for version 3.0.0 on x86/x86_64
ii  linux-image-3.0.0-17-generic   3.0.0-17.30   Linux kernel image for version 3.0.0 on x86/x86_64
ii  linux-image-3.0.0-19-generic   3.0.0-19.33   Linux kernel image for version 3.0.0 on x86/x86_64
ii  linux-image-3.0.0-20-generic   3.0.0-20.34   Linux kernel image for version 3.0.0 on x86/x86_64
ii  linux-image-3.0.0-21-generic   3.0.0-21.35   Linux kernel image for version 3.0.0 on x86/x86_64
ii  linux-image-3.0.0-22-generic   3.0.0-22.36   Linux kernel image for version 3.0.0 on x86/x86_64
ii  linux-image-3.0.0-23-generic   3.0.0-23.39   Linux kernel image for version 3.0.0 on x86/x86_64
ii  linux-image-3.0.0-24-generic   3.0.0-24.40   Linux kernel image for version 3.0.0 on x86/x86_64
ii  linux-image-3.0.0-25-generic   3.0.0-25.41   Linux kernel image for version 3.0.0 on x86/x86_64
ii  linux-image-generic            3.0.0.25.29   Generic Linux kernel image

Для того, чтобы удалить ненужное ядро, нужно выполнить следующую команду (предварительно указав название нужного пакета из списка выше):

sudo apt-get purge linux-image-3.0.0-14-generic

После того, как мы удалим все ядра, которые хотим, не забудьте выполнить команду update-grub2, чтобы обновить конфигурацию загрузчика.

Шлюз

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

eth0 — подключение к интернет. (может получать IP адрес динамически, может иметь статический)

eth1 — подключение к локальной сети, будет иметь статический IP 192.168.10.1 и маску 255.255.255.0

Настройка сетевых интерфейсов

Редактируем настройки сетевых интерфейсов:

vi /etc/network/interfaces

Настраиваем eth0 (по которому осуществляется подключение к интернет)

Вариант №1- Получение IP по DHCP от провайдера:

auto eth0
iface eth0 inet dhcp

Вариант №2-Статический IP

auto eth0
iface eth0 inet static
address XXX.XXX.XXX.XXX
netmask 255.YYY.YYY.YYY
gateway XXX.XXX.XXX.XXX
dns-nameservers ZZZ.ZZZ.ZZZ.ZZZ

Где:

Вместо XXX.XXX.XXX.XXX вписываем IP адрес, который мы получили от провайдера

Вместо 255.YYY.YYY.YYY - вписываем маску подсети.

Ну и вместо ZZZ.ZZZ.ZZZ.ZZZ вписываем IP адрес DNS сервера.

Настраиваем eth1 (по которому подключается локальная сеть)

auto eth1
iface eth1 inet static
address 192.168.10.1
netmask 255.255.255.0

interfaces, примерно, следующего содержания:

auto lo
iface lo inet loopback
 
auto eth0
iface eth0 inet static
address XXX.XXX.XXX.XXX
netmask 255.YYY.YYY.YYY
gateway XXX.XXX.XXX.XXX
 
auto eth1
iface eth1 inet static
address 192.168.10.1
netmask 255.255.255.0

Перезапустим сеть:

/etc/init.d/networking restart

В локальной сети адрес шлюза и dns сервера, будет 192.168.10.1.

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

Присваиваем клиенту:

IP 192.168.10.2
маска подсети 255.255.255.0
шлюз 192.168.10.1
DNS 192.168.10.1

пробуем с клиента пинговать 192.168.10.1 — запросы должны бегать нормально.

Переходим на наш шлюз.

DNSMASQ

Установим пакет dnsmasq, он необходим для перенаправления DNS запросов, вышестоящим серверам.

apt-get install dnsmasq

Маршрутизация пакетов

разрешаем перенаправление пакетов:

vi /etc/sysctl.conf

необходимо найти строку и снять с нее комментарий:

net.ipv4.ip_forward=1

Сохраняем изменения и выходим.

Доп. инфо о перенаправлении пакетов:

IPTABLES

Теперь, нам необходимо добавить правила для маршрутизации пакетов:

vi /etc/rc.local

Добавляемим перед строкой exit 0

iptables -F
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -A FORWARD -i eth1 -o eth0 -j REJECT
iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

Сохраняем изменения, и перезагружаем сервер.

reboot