Различия
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
wiki:настройка_сети_вручную [2013/04/21 23:19] [Ручная настройка роутинга] |
wiki:настройка_сети_вручную [2018/01/22 18:46] [Требования к системе] |
||
---|---|---|---|
Строка 17: | Строка 17: | ||
* У Вас есть все необходимые параметры для подключения в Вашей сети (например, IP-адрес, маска подсети и шлюз по умолчанию для соединения с использованием статического IP). | * У Вас есть все необходимые параметры для подключения в Вашей сети (например, IP-адрес, маска подсети и шлюз по умолчанию для соединения с использованием статического IP). | ||
* Устройства сети осуществляющие фильтрацию по MAC-адресу правильно настроены и "знают" Ваш сетевой интерфейс. | * Устройства сети осуществляющие фильтрацию по MAC-адресу правильно настроены и "знают" Ваш сетевой интерфейс. | ||
- | * Драйвер Вашего сетевого устройства корректно установлен, кабель (при проводном соединении) исправен и подсоединен. Команда | + | * Драйвер Вашего сетевого устройства корректно установлен, кабель (при проводном соединении) исправен и подсоединен. |
+ | |||
+ | Для настроек вам обязательно потребуется имя вашего сетевого адаптера. Его можно узнать из вывода команды: | ||
<code> | <code> | ||
$ sudo lshw -C network | $ sudo lshw -C network | ||
</code> | </code> | ||
- | позволяет посмотреть подключенные сетевые устройства.\\ | + | Она позволяет посмотреть подключенные сетевые устройства.\\ |
Пример вывода команды: | Пример вывода команды: | ||
<file> | <file> | ||
ubuntu@ubuntu:~$ sudo lshw -C network | ubuntu@ubuntu:~$ sudo lshw -C network | ||
*-network | *-network | ||
- | description: Ethernet interface # Тип устройства | + | description: Ethernet interface # Тип устройства |
- | product: L2 100 Mbit Ethernet Adapter # Название адаптера | + | product: L2 100 Mbit Ethernet Adapter # Название адаптера |
- | vendor: Attansic Technology Corp. # Производитель устройства | + | vendor: Attansic Technology Corp. # Производитель устройства |
physical id: 0 | physical id: 0 | ||
bus info: pci@0000:03:00.0 | bus info: pci@0000:03:00.0 | ||
- | logical name: eth0 # Имя сетевого интерфейса | + | logical name: eth0 # Имя сетевого интерфейса |
version: a0 | version: a0 | ||
- | serial: 00:00:00:00:00:00 # Физический адрес устройства (mac-адрес) | + | serial: 00:00:00:00:00:00 # Физический адрес устройства (mac-адрес) |
size: 100MB/s | size: 100MB/s | ||
capacity: 100MB/s | capacity: 100MB/s | ||
Строка 41: | Строка 44: | ||
ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd autonegotiation | ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd autonegotiation | ||
configuration: autonegotiation=on broadcast=yes | configuration: autonegotiation=on broadcast=yes | ||
- | driver=atl2 # Используемый драйвер | + | driver=atl2 # Используемый драйвер |
- | driverversion=2.2.3 # Версия драйвера | + | driverversion=2.2.3 # Версия драйвера |
duplex=full firmware=L2 ip=192.168.0.5 latency=0 | duplex=full firmware=L2 ip=192.168.0.5 latency=0 | ||
- | link=yes # Наличие линка | + | link=yes # Наличие линка |
module=atl2 multicast=yes port=twisted pair | module=atl2 multicast=yes port=twisted pair | ||
- | speed=100MB/s # Текущая скорость подключения. | + | speed=100MB/s # Текущая скорость подключения. |
</file> | </file> | ||
- | Обратите внимание на пункт: | + | Обратите внимание на строку: |
<file> | <file> | ||
- | logical name: eth0 # Имя сетевого интерфейса | + | logical name: eth0 |
</file> | </file> | ||
+ | eth0 - это и есть искомое имя сетевого интерфейса. | ||
Имя ''eth0'' будет далее применяться для настройки именно данной сетевой карты. Где ''eth'' обозначает что используется [[http://ru.wikipedia.org/wiki/Ethernet|Ethernet]] интерфейс, а ''0'' - номер устройства. Если у вас установлено несколько сетевых устройств, то, соответственно, им будут присвоены имена: ''eth0'', ''eth1'', ''eth2'' и т.д. | Имя ''eth0'' будет далее применяться для настройки именно данной сетевой карты. Где ''eth'' обозначает что используется [[http://ru.wikipedia.org/wiki/Ethernet|Ethernet]] интерфейс, а ''0'' - номер устройства. Если у вас установлено несколько сетевых устройств, то, соответственно, им будут присвоены имена: ''eth0'', ''eth1'', ''eth2'' и т.д. | ||
+ | |||
+ | <note important>После внедрения SystemD (начиная с Ubuntu 15.04) сетевые интерфейсы могут иметь другие имена (не ethX). | ||
+ | Сделано это для того, что бы имена сетевых устройств не менялись при подключении к машине новых адаптеров (в последнее время, некоторые USB модемы выступают в роли сетевого адаптера). В результате eth0 может называться например enp0s4 или eno1, или даже enx78e7d1ea46da. Именно это имя сетевого адаптера и нужно использовать в настройке сети. | ||
+ | |||
+ | Более подробно о наименовании сетевых интерфейсов в SystemD можно почитать [[https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/|тут]] (англ.). | ||
+ | |||
+ | Такое переименование можно отключить добавив в **/etc/default/grub**, в строку с переменной **GRUB_CMDLINE_LINUX_DEFAULT** строку **net.ifnames=0**. После этого нужно выполнить **sudo update-grub** | ||
+ | </note> | ||
+ | |||
+ | |||
===== Настройка проводной сети ===== | ===== Настройка проводной сети ===== | ||
Строка 69: | Строка 83: | ||
address 192.168.0.1 | address 192.168.0.1 | ||
netmask 255.255.255.0 | netmask 255.255.255.0 | ||
- | gateway 192.168.0.254 | + | gateway 192.168.0.254 |
+ | dns-nameservers 192.168.0.254 8.8.8.8 | ||
auto eth0 | auto eth0 | ||
</code> | </code> | ||
Строка 77: | Строка 92: | ||
* ''netmask 255.255.255.0'' - указывает что наша маска подсети (netmask) имеет значение 255.255.255.0; | * ''netmask 255.255.255.0'' - указывает что наша маска подсети (netmask) имеет значение 255.255.255.0; | ||
* ''gateway 192.168.0.254'' - адрес шлюза (''gateway'') по умолчанию 192.168.0.254; | * ''gateway 192.168.0.254'' - адрес шлюза (''gateway'') по умолчанию 192.168.0.254; | ||
+ | * ''dns-nameservers 192.168.0.254 8.8.8.8'' - адреса DNS серверов (о ниж мы расскажем позже) | ||
* ''auto eth0'' - указывет системе что интерфейс ''eth0'' необходимо включать автоматически при загрузке системы с вышеуказанными параметрами. | * ''auto eth0'' - указывет системе что интерфейс ''eth0'' необходимо включать автоматически при загрузке системы с вышеуказанными параметрами. | ||
**eth0** - имя подключаемого своего интерфейса. Список интерфейсов можно посмотреть набрав: | **eth0** - имя подключаемого своего интерфейса. Список интерфейсов можно посмотреть набрав: | ||
<code> | <code> | ||
- | $ ifconfig -a | + | $ ip addr |
</code> | </code> | ||
Строка 99: | Строка 115: | ||
netmask 255.255.255.0 | netmask 255.255.255.0 | ||
gateway 192.168.0.254 | gateway 192.168.0.254 | ||
+ | dns-nameservers 192.168.0.254 8.8.8.8 | ||
auto eth0 | auto eth0 | ||
</file> | </file> | ||
Строка 115: | Строка 132: | ||
При необходимости задать пробные настройки, выполните: | При необходимости задать пробные настройки, выполните: | ||
<code> | <code> | ||
- | $ sudo ifconfig eth0 192.168.0.1 netmask 255.255.255.0 up | + | $ sudo ip addr add 192.168.0.1/24 dev eth0 |
</code> | </code> | ||
- | Где 192.168.0.1 - наш IP-адрес, 255.255.255.0 - наша маска подсети.\\ | + | Где 192.168.0.1 - наш IP-адрес, /24 - число бит в префиксной части адреса (соответствует маске подсети 255.255.255.0). \\ |
**eth0** - подключаемый сетевой интерфейс. | **eth0** - подключаемый сетевой интерфейс. | ||
Данные настройки пропадут после перезагрузки системы и не повлияют на файл //''/etc/network/interfaces''// | Данные настройки пропадут после перезагрузки системы и не повлияют на файл //''/etc/network/interfaces''// | ||
- | |||
- | |||
===== Настройка DNS ===== | ===== Настройка DNS ===== | ||
- | Если есть необходимость указать DNS сервера (если они не выдаются автоматически) выполните: | + | За конфигурацию DNS отвечает утилита resolvconf, которая работает в паре с небольшим кеширующим DNS сервером dnsmasq. resolvconf позволяет осуществить настройку DNS на основе данных от разных подсистем.\\ |
+ | Одним из следствий этого полезного нововведения (переход на эту схему произошел в Ubuntu начиная с версии 12.04) является то, что теперь файл /etc/resolv.conf генерируется автоматически, а не индивидуально каждой программой, которая хочет его изменить (порой перезаписывая правки сделанные ранее). Автоматическая генерация /etc/resolv.conf означает, что внесенные "руками" изменения в него будут потеряны.\\ | ||
+ | Автоматически формируемый /etc/resolv.conf содержит ссылку на DNS сервер на локальном интерфейсе (127.0.1.1), а там (на 53 порту) и сидит сервис dnsmasq, который отвечает за разрешение символьных имен в IP адреса. Нужно отметить, что этот порт (53) открыт в режиме LISTEN, но т.к. это локальный интерфейс, то из внешней сети этот порт не доступен.\\ | ||
+ | Информацию о DNS для статических интерфейсов теперь надо вносить в /etc/network/interfaces((что, по большому счету, вполне логично)) в параметры dns-nameservers, dns-search и dns-domain (которые соответствуют параметрам nameserver, search и domain в /etc/resolv.conf)\\ | ||
+ | <note>Обратите внимание - в /etc/resolv.conf, при записи нескольких серверов используется несколько ключей nameserver, а в /etc/network/interfaces все адреса DNS серверов записывались в одну строчку после ключа dns-nameservers, разделенные пробелами.</note> | ||
+ | В итоге описание статического интерфейса в /etc/network/interfaces должно выглядеть примерно так: | ||
+ | <code> | ||
+ | iface eth0 inet static | ||
+ | address 192.168.0.1 | ||
+ | netmask 255.255.255.0 | ||
+ | gateway 192.168.0.254 | ||
+ | dns-nameservers 8.8.8.8 192.168.0.254 | ||
+ | auto eth0 | ||
+ | </code> | ||
+ | == Ubuntu до версии 12.04 == | ||
+ | В более старых версиях ubuntu, когда есть необходимость указать статические адреса DNS серверов (если они не выдаются автоматически) выполните: | ||
<code> | <code> | ||
$ sudo gedit /etc/resolv.conf | $ sudo gedit /etc/resolv.conf | ||
</code> | </code> | ||
- | и впишите туда: | + | и впишите туда адреса DNS серверов (отдельные записи для каждого сервера): |
<code> | <code> | ||
Строка 138: | Строка 168: | ||
Где 192.168.0.100 и 192.168.0.200 - адреса DNS серверов. Если нужно добавить больше адресов - каждый адрес нужно начинать с новой строки и с фразы ''nameserver '' | Где 192.168.0.100 и 192.168.0.200 - адреса DNS серверов. Если нужно добавить больше адресов - каждый адрес нужно начинать с новой строки и с фразы ''nameserver '' | ||
- | |||
- | Более подробно про синтаксис файла //''/etc/resolv.conf''// можно прочитать в [[man_resolvconf|документации]]. | ||
- | |||
- | <note important>Начиная c 12.04 в Ubuntu изменилась настройка DNS</note> | ||
- | С 12.04 за конфигурацию DNS отвечает программа resolvconf (вместо файла /etc/resolv.conf). Она позволяет осуществить настройку DNS на основе данных от разных программ и файлов конфигурации.\\ | ||
- | Одним из следствий этого полезного нововведения является то, что теперь файл /etc/resolv.conf генерируется автоматически. И не индивидуально каждой программой, которая его правит (например Network Manager или DHCP клиент), а через общий программный интерфейс. Это значит, что внесенные в /etc/resolv.conf изменения будут потеряны.\\ | ||
- | Вместо /etc/resolv.conf информацию о DNS для статических интерфейсов надо вносить в /etc/network/interfaces((что, по большому счету, довольно логично)) в параметры dns-nameservers, dns-search и dns-domain (которые соответствуют параметрам nameserver, search и domain в /etc/resolv.conf)\\ | ||
- | <note>Обратите внимание - в /etc/resolv.conf, как правило записываются несколько nameserver, а в /etc/network/interfaces все адреса DNS серверов записываются в одну строчку после ключа dns-nameservers, разделенные пробелами.</note> | ||
- | |||
- | |||
- | |||
===== Настройка соединений ppp ===== | ===== Настройка соединений ppp ===== | ||
Строка 201: | Строка 220: | ||
mtu 1476 # Значение MTU | mtu 1476 # Значение MTU | ||
name {логин} # Ваш логин. | name {логин} # Ваш логин. | ||
+ | #nodefaultroute # Не быть шлюзом по умолчанию | ||
+ | defaultroute # Быть шлюзом по умолчанию | ||
+ | replacedefaultroute # Заменить шлюз по умолчанию если он был | ||
remotename {vpn} # Имя удаленного сервера (для нас), может быть любым. | remotename {vpn} # Имя удаленного сервера (для нас), может быть любым. | ||
pty "pptp {адрес_сервера} --nolaunchpppd" # Команда запуска pptp. | pty "pptp {адрес_сервера} --nolaunchpppd" # Команда запуска pptp. | ||
Строка 471: | Строка 493: | ||
Extra: Last beacon: 388ms ago | Extra: Last beacon: 388ms ago | ||
</file> | </file> | ||
+ | |||
+ | Бывает, что Ваше устройство Wi-Fi не включено по умолчанию, тогда команда вместо рапорта, приведенного выше выдаст | ||
+ | такое сообщение: | ||
+ | <file> | ||
+ | wlan0 Failed to read scan data : Network is down | ||
+ | </file> | ||
+ | Ничего страшного, просто введите команду | ||
+ | <code> | ||
+ | sudo ip link set dev wlan0 up | ||
+ | </code> | ||
+ | соответственно выключить устройство можно командой | ||
+ | <code> | ||
+ | sudo ip link set dev wlan0 down | ||
+ | </code> | ||
=== Настройка === | === Настройка === | ||
Строка 625: | Строка 661: | ||
auto wlan0 | auto wlan0 | ||
</file> | </file> | ||
- | |||
Строка 680: | Строка 715: | ||
</code> | </code> | ||
- | Теперь, при запуске команды ''ifconfig'' должно отобразиться подключение eth0 с выставленными параметрами. | + | Теперь, при запуске команды ''ip addr'' должно отобразиться подключение eth0 с выставленными параметрами. |
Если подключение отображается, но параметры не такие, какие были указаны в файле ''/etc/network/interfaces'', либо возникают любые другие ошибки, перепроверьте этот файл на наличие неточностей и опечаток и попробуйте ещё раз перезапустить сеть. | Если подключение отображается, но параметры не такие, какие были указаны в файле ''/etc/network/interfaces'', либо возникают любые другие ошибки, перепроверьте этот файл на наличие неточностей и опечаток и попробуйте ещё раз перезапустить сеть. | ||
Строка 704: | Строка 739: | ||
Например, интерфейсу //eth0// нужно добавить адрес //192.168.1.1//. | Например, интерфейсу //eth0// нужно добавить адрес //192.168.1.1//. | ||
Кратковременно, до перезапуска сети: | Кратковременно, до перезапуска сети: | ||
- | <code>sudo ifconfig eth0:1 192.168.1.1</code> | + | <code>sudo ip addr add 192.168.1.1/24 dev eth0</code> |
Навсегда — добавить в ''/etc/network/interfaces'' следующее: | Навсегда — добавить в ''/etc/network/interfaces'' следующее: | ||
<code> | <code> |