- Как настроить статический IP-адрес в Linux и Unix
- В RHEL/CentOS/Fedora/Scientific Linux
- В Ubuntu/Debian/Linux Mint
- В Unix
- NetworkConfigurationCommandLine
- Find Network Interface Card
- Configuring Static IP Address For Your Network Card
- Setting up Second IP Address or Virtual IP Address
- Setting Your Hostname
- Setting up DNS
- Configuring DHCP Address for Your Network Card
- Howto Set MTU for a DHCP Connection
Как настроить статический IP-адрес в Linux и Unix
Настройка IP-адреса — один из основных навыков, который должен освоить каждый администратор Linux и Unix. Настроить IP-адрес в режиме графического интерфейса намного проще, поэтому мы не будем описывать это в этом руководстве. Но что в режиме командной строки? Это не так уж сложно. Этот статья описывает, как настроить статический IP в ваших системах Linux и Unix. В этой статье описано, как это сделать в дистрибутивах Linux, таких как CentOS, Debian, Ubuntu и Unix, таких как FreeBSD.
В RHEL/CentOS/Fedora/Scientific Linux
В Fedora, RHEL и его клонах, таких как CentOS, Scientific Linux, конфигурация сетевой карты (кратко NIC) хранится в каталоге /etc/sysconfig/network-scripts/. Для выполнения следующих команд используйте пользователя root. Если же вы вошли в систему как обычный пользователь, просто используйте sudo перед каждой командой.
Сначала необходимо узнать имя сетевой карты. Для этого запустите:
1: lo: mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: enp0s3: mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 08:00:27:80:63:19 brd ff:ff:ff:ff:ff:ff inet 192.168.1.150/24 brd 192.168.1.255 scope global enp0s3 valid_lft forever preferred_lft forever inet6 fe80::a00:27ff:fe80:6319/64 scope link valid_lft forever preferred_lft forever
Обычно имя проводной сетевой карты начинается с буквы «е», а имя беспроводной карты начинается с буквы «w».
Как видно из вышеприведенного вывода, имя моей проводной сетевой карты enp0s3. Он может отличаться в вашем дистрибутиве, но обычно начинается с буквы «е».
Давайте настроим статический IP-адрес для этого сетевого адаптера.
Откройте файл конфигурации сетевой карты в любом редакторе:
# nano /etc/sysconfig/network-scripts/ifcfg-enp0s3
nano — текстовый редактор. Вы можете использовать любой текстовый редактор на ваш выбор, например, vi или gedit.
Добавьте IP-адрес, маску подсети, шлюз и DNS -сервер, как показано ниже.
TYPE="Ethernet" BOOTPROTO="none" DEFROUTE="yes" IPV4_FAILURE_FATAL="no" IPV6INIT="yes" IPV6_AUTOCONF="yes" IPV6_DEFROUTE="yes" IPV6_FAILURE_FATAL="no" NAME="enp0s3" UUID="e9f9caef-cb9e-4a19-aace-767c6ee6f849" ONBOOT="yes" HWADDR="08:00:27:80:63:19" IPADDR0="192.168.1.150" PREFIX0="24" GATEWAY0="192.168.1.1" DNS1="192.168.1.1" IPV6_PEERDNS="yes" IPV6_PEERROUTES="yes"
BOOTPROTO = ”none” — эта строка показывает, что IP-адрес сетевой карты должен быть настроен вручную. Если вы установите значение «dhcp», то сетевая карта будет принимать IP-адрес от любого DHCP-сервера в сети;
IPADDR0 = ”192.168.1.150″ — в этой строке указывается IP-адрес сетевой карты. Здесь вы можете заметить число 0 (ноль) после IPADDR. Это означает, что эта карта имеет только один IP-адрес. Если вы хотите установить более одного IP-адреса (то есть виртуального IP-адреса, то вам нужно добавить строки обозначенные как IPADDR1, IPADDR2 и т.д.;
PREFIX0 = ”24″ — эта строка указывает маску подсети, т.е. 25.255.255.0. Здесь вы можете указать более одного PREFIX со строками PREFIX1, PREFIX2 и т.д., в соответствии с числом виртуальных IP-адресов;
После того, как вы настройки, сохраняем и закрываем файл. Перезапускаем сетевой сервис, чтобы изменения вступили в силу.
# systemctl restart network
Или перезагружаем систему.
Проверим правильность настройки сетевых интерфейсов:
Или можно проверить адрес конкретной сетевой карты, как показано ниже.
Пример вывода последней команды
2: enp0s3: mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 08:00:27:80:63:19 brd ff:ff:ff:ff:ff:ff inet 192.168.1.150/24 brd 192.168.1.255 scope global enp0s3 valid_lft forever preferred_lft forever inet6 fe80::a00:27ff:fe80:6319/64 scope link valid_lft forever preferred_lft forever
Кроме того, вы можете использовать команду nmtui для настройки IP-адреса.
Введите IP-адрес, маску сети, шлюз, DNS и т.д.
Нажмите OK, чтобы сохранить изменения, и перезапустите сетевую службу или перезагрузите систему, чтобы изменения вступили в силу.
В Ubuntu/Debian/Linux Mint
В системах на основе DEB, таких как Ubuntu, Linux Mint, Elementary OS и т.д. файл конфигурации сетевой карты хранится в каталоге /etc/network/
Чтобы настроить статический IP-адрес в любых системах на основе DEB, выполните следующие действия.
Отредактируйте файл /etc/network/interfaces в любом удобном текстовом редакторе
$ sudo nano /etc/network/interfaces
Добавьте или измените следующие строки для настройки статического IP-адреса.
auto enp0s3 iface enp0s3 inet static address 192.168.1.105 netmask 255.255.255.0 gateway 192.168.1.1 dns-nameservers 192.168.1.1
Сохраните и закройте файл
Перезапустите сетевой интерфейс:
$ sudo systemctl restart ifup@enp0s3
Или перезагрузите систему.
Теперь проверьте новый статический IP-адрес с помощью одной из следующих команд:
$ ifconfig $ ip addr $ ip a s enp0s3
Пример вывода последней команды
2: enp0s3: mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 08:00:27:12:f8:c1 brd ff:ff:ff:ff:ff:ff inet 192.168.1.105/24 brd 192.168.1.255 scope global enp0s3 valid_lft forever preferred_lft forever inet6 fe80::a00:27ff:fe12:f8c1/64 scope link valid_lft forever preferred_lft forever
В Unix
Мы уже знаем, как настроить статический IP-адрес в Linux из командной строки. Теперь настроим статический IP-адрес в Unix. В этой статье мы будем использовать FreeBSD 10.3.
Как и в Linux, мы используем команду ifconfig, чтобы узнать имя сетевой карты. Здесь я вошел в систему как пользователь root для выполнения следующих команд.
em0: flags=8843 metric 0 mtu 1500 options=9b ether 08:00:27:f8:ba:d8 inet 192.168.1.103 netmask 0xffffff00 broadcast 192.168.1.255 nd6 options=29 media: Ethernet autoselect (1000baseT ) status: active lo0: flags=8049 metric 0 mtu 16384 options=600003 inet6 ::1 prefixlen 128 inet6 fe80::1%lo0 prefixlen 64 scopeid 0x2 inet 127.0.0.1 netmask 0xff000000 nd6 options=21
Здесь em0 — имя сетевой карты.
Чтобы настроить статический IP-адрес, отредактируем файл /etc/rc.conf:
Добавим или изменим строки, как показано ниже.
hostname="freebsd.test.local" ifconfig_em0="inet 192.168.1.103 netmask 255.255.255.0" defaultrouter="192.168.1.1" local_unbound_enable="YES" sshd_enable="YES" moused_enable="YES" ntpd_enable="YES" powerd_enable="YES" # Set dumpdev to "AUTO" to enable crash dumps, "NO" to disable dumpdev="AUTO"
Теперь перезапустим сетевой интерфейс
# /etc/rc.d/netif restart && /etc/rc.d/routing restart
Чтобы настроить сетевую карту для получения IP-адреса от сервера DHCP, добавьте или измените только следующие строки:
hostname="freebsd.test.local" ifconfig_em0="DHCP"
Сохраните и закройте файл. Перезапустите сетевой сервис или перезагрузите систему, чтобы изменения вступили в силу.
И это все. Теперь вы знаете, как настроить статический IP-адрес в дистрибутивах Unix и Linux. Как видно из приведенных выше примеров, настройка IP-адреса из командной строки не очень сложна, как может показаться.
Если не указано иное, содержимое этой вики предоставляется на условиях следующей лицензии:
CC Attribution-Noncommercial-Share Alike 4.0 International
NetworkConfigurationCommandLine
You can configure a network interface from the command line. You configure your network client hosts with the command line by using commands to change your current settings or by editing a number of system files.
Find Network Interface Card
When setting up your network you will need to know the network interface cards on your computer. The interface name of cards for different vendors may be different, which is why this step is needed.
This will list the interface names for all NICs on your computer. It will probably include eth0 (hardwired NIC), lo (loopback interface for the localhost), and something for your wireless card (like wifi0, or wlan0).
Configuring Static IP Address For Your Network Card
Configure a Static IP address by editing /etc/network/interfaces. Replace eth0 with your network interface card (see Find Network Interface Card).
sudo nano /etc/network/interfaces
# The primary network interface auto eth0 iface eth0 inet static address 192.168.2.33 gateway 192.168.2.1 netmask 255.255.255.0 network 192.168.2.0 broadcast 192.168.2.255
For these settings to take effect you need to restart your networking services.
sudo /etc/init.d/networking restart
Setting up Second IP Address or Virtual IP Address
If you need to set up a second ip address you need to edit the /etc/network/interfaces.
sudo nano /etc/network/interfaces
auto eth0:1 iface eth0:1 inet static address 192.168.2.33 netmask 255.255.255.0 network x.x.x.x broadcast x.x.x.x gateway x.x.x.x
You need to enter all the details like address,netmask,network,broadcast and gateways values.
For these new settings to take effect you need to restart networking services using the following command
sudo /etc/init.d/networking restart
Setting Your Hostname
The hostname command allows you to directly query, or set, the hostname from the command line.
You can see your current hostname with
To set the hostname directly you can become root and run
When your system boots it will automatically read the hostname from the file /etc/hostname
Setting up DNS
You can add hostname and IP addresses to the file /etc/hosts for static lookups.
To cause your machine to consult with a particular server for name lookups you simply add their addresses to /etc/resolv.conf.
For example a machine which should perform lookups from the DNS server at IP address 192.168.3.2 would have a resolv.conf file looking like this
enter the following details
search myaddress.com nameserver 192.168.3.2
Configuring DHCP Address for Your Network Card
The DHCP address can be configured by editing the following file /etc/network/interfaces. Replace eth0 with your interface card (see Find Network Interface Card).
sudo nano /etc/network/interfaces
# The primary network interface – use DHCP to find our address auto eth0 iface eth0 inet dhcp
Howto Set MTU for a DHCP Connection
Although this is not documented in the manual for interfaces, MTU for a DHCP connected device can be set in the /etc/network/interfaces file. To do so you need to append the ‘pre-up’ command to the ‘iface’ section of the relevent interface.
iface eth0 inet dhcp pre-up /sbin/ip link set $IFACE mtu 1492
The above example sets the MTU for device eth0 to 1492, the usual MTU for a PPPoE ISP connection. This however is only needed if connections seem to hang otherwise (with the default of 1500).
NetworkConfigurationCommandLine (последним исправлял пользователь ip72-213-131-215 2009-08-14 04:14:29)
The material on this wiki is available under a free license, see Copyright / License for details
You can contribute to this wiki, see Wiki Guide for details