- Как задать ip адрес в Linux
- Как узнать IP, шлюз и маску?
- Настройка ip адреса в Ubuntu
- Настройка IP адреса в CentOS
- Настройка статического IP адреса в nmcli
- Настройка IP в графическом интерфейсе
- Настройка IP адреса с помощью утилиты ip
- Выводы
- How to Set Static IP Address and Configure Network in Linux
- Configure Static IP Address in RHEL/CentOS/Fedora:
- Set Static IP Address in Debian / Ubuntu
- Conclusion:
- How to set static IP address?
- 7 Answers 7
- Setting Static IP
Как задать ip адрес в Linux
По умолчанию в большинстве дистрибутивов Linux, ip адрес устанавливается автоматически, по протоколу DHCP, независимо от того какой тип соединения используется, будь то проводной интернет или беспроводное подключение к точке доступа Wifi или даже USB модем. Но если необходимо вы можете задать ip адрес Linux вручную. Это может понадобиться если вы хотите использовать статический ip адрес чтобы сеть запускалась быстрее при старте системы.
Есть несколько способов ручной настройки ip адреса в системе Linux, все можно сделать с помощью терминала или в графическом интерфейсе. Мы будем рассматривать только ipv4 адреса, и поговорим о том, как настроить статический ip, который будет присваиваться сетевому интерфейсу автоматически, а также как установить ip для сетевого интерфейса с помощью утилиты ip.
Как узнать IP, шлюз и маску?
Вы не можете установить любой IP для своего компьютера. Есть определенный диапазон значений, которые можно использовать. Ваш новый ip адрес должен быть в той же сети, что IP адрес роутера, который представляет из себя шлюз в сеть. Также, если вы задаете IP вручную, то нужно указать и другие параметры, которые система раньше получала по DHCP. И перед тем как переходить к настройке давайте рассмотрим откуда взять эти данные.
Обычно, в локальных сетях адрес находится в одном из следующих диапазонов:
Они все зарезервированы для локальных сетей и их использование не должно вызвать конфликтов с общим интернетом, таким образом сначала надо узнать адрес шлюза. Но со шлюзом все немного сложнее. Это ваш маршрутизатор. Очень важно указать шлюз правильно, иначе компьютер не сможет получить доступ к сети. Посмотреть текущий адрес шлюза можно командой:
Здесь мы видим, что наш адрес шлюза — 192.168.0.1. Отсюда выплывает, что нам нужно выбирать наш ip именно из этого диапазона, можно менять только последнюю цифру и надо, чтобы в этой сети компьютеров с такими адресами больше не было, например, 192.168.0.64.
Маска подсети используется чтобы отделить локальную часть ip адреса, которая меняется, от статической. Сейчас в большинстве случаев применяется значение 255.255.255.0, которое означает изменение только последней цифры. Теперь, когда вы знаете откуда брать все значения, рассмотрим как установить ip адрес Linux.
Настройка ip адреса в Ubuntu
Настройкой сети в Ubuntu по умолчанию занимается специальная служба networking, конфигурация которой находятся в файле /etc/network/interfaces. Стандартные настройки с использованием динамического получения ip адреса по DHCP выглядят следующим образом:
В этом примере настраиваются два интерфейса, lo и eth0. Нас будет интересовать только строчка, касающаяся проводного соединения eth0, она тут одна:
Отредактируйте конфигурацию как показано ниже, нужно закомментировать строчку получения ip по DHCP и добавить вместо нее настройку статического ip адреса, подсети, и шлюза:
sudo vi /etc/network/interfaces
auto lo
iface lo inet loopback
# iface enp24s0 inet dhcp
auto enp24s0
iface enp24s0 inet static
address 192.168.0.65
netmask 255.255.255.0
gateway 192.168.0.1
dns-nameservers 8.8.8.8,8.8.4.4
Более подробно настройка сети Ubuntu через терминал описана в отдельной статье. Настройте параметры в соответствии с вашими параметрами сети. Затем перезапустите сетевые службы чтобы изменения вступили в силу без перезагрузки компьютера:
sudo systemctl restart networking
Чтобы убедиться что все установлено правильно используйте утилиту ip.
ip addr list | grep enp24s0
Настройка IP адреса в CentOS
В системах, основанных на дистрибутиве RedHat, файлы настройки сети немного отличаются. Тут за начальную настройку сети отвечает фреймворк Wiched. Настройки получения IP адреса хранятся отдельно для каждого сетевого интерфейса в файлах /etc/sysconfig/network-scripts/ifcfg-имя_интерфейса, например, enp2s0. Настройки статического ip для сетевого адаптера с адресом enp2s0 будут выглядеть следующим образом:
sudo vi /etc/sysconfig/network-scripts/ifcfg-enp2s0
DEVICE=»enp2s0″
BOOTPROTO=»static»
NM_CONTROLLED=»yes»
ONBOOT=»yes»
TYPE=»Ethernet»
IPADDR=192.168.0.65
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
DNS1=»8.8.8.8″
Чтобы изменения вступили в силу перезапускаем сеть:
sudo systemctl restart networking
Готово, настройка ip адреса linux с помощью стандартных средств системы завершена и вы можете дальше использовать свой компьютер.
Настройка статического IP адреса в nmcli
Сетевой конфигуратор NetworkManager сейчас используется практически повсеместно. Если нужно настроить IP в терминале вы можете использовать утилиту nmcli. Сначала смотрим доступные подключения. Для этого выполните:
Допустим, что необходимое вам подключение называется Проводное соединение 2. Тогда осталось установить IP адрес, шлюз и DNS сервер:
nmcli con mod «Проводное соединение 2» ipv4.addresses 192.168.1.64/24
nmcli con mod «Проводное соединение 2» ipv4.gateway 192.168.1.1
nmcli con mod «Проводное соединение 2» ipv4.dns «8.8.8.8»
Затем надо сообщить утилите, что IP адрес будет настраиваться вручную:
nmcli con mod «Проводное соединение 2» ipv4.method manual
В этом примере IP адрес задается немного по другому. Сначала идёт выбранный ip адрес, а затем маска в формате /24. Это аналог записи 255.255.255.0, только короче.
Настройка IP в графическом интерфейсе
Разберемся ещё как изменить IP адрес через графический интерфейс. Для этого кликните по значку сети в правом верхнем углу экрана, затем выберите любое сетевое подключение и кликните по пункту Параметры соединения:
В открывшемся окне параметров нажмите значок шестеренки напротив нужного соединения, например, Проводное:
Перейдите на вкладку IPv4 и напротив пункта Метод IPv4 выберите Вручную. Появится несколько полей, которые надо заполнить. Заполните IP адрес, маску и шлюз:
Затем чуть ниже пропишите DNS. Когда всё будет готово нажмите кнопку Применить.
Настройка IP адреса с помощью утилиты ip
Если вам не нужно настраивать статический ip при загрузке, а необходимо только один раз задать ip адрес linux через терминал, то можно использовать утилиту ip. Включите интерфейс, если он выключен:
Сначала нужно изменить IP и маску сети:
sudo ip addr add 192.168.0.65/255.255.255.0 dev eth0
sudo ip route add default via 192.168.0.1
Готово, теперь ваша сеть должна работать. Только эти настройки будут работать до первой перезагрузки.
Выводы
Вот и все. В этой статье мы рассмотрели как выполняется настройка ip адреса linux. Все это может показаться сложным, но если хорошо разобраться, то смена ip linux уже не будет вызывать таких проблем. Если у вас остались вопросы, спрашивайте в комментариях!
На завершение, видео о том что значат цифры ip адреса и зачем они нужны:
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.
How to Set Static IP Address and Configure Network in Linux
If you are a Linux system administrator, time will come when you will need to configure networking on your system. Unlike desktop machines where you can use dynamic IP addresses, on a server infrastructure, you will need to setup a static IP address (at least in most cases).
This article is meant to show you how to configure static IP address on most frequently used Linux distributions.
For the purpose of this tutorial, we will use the following Internet Protocol version 4 (IPv4) details:
IP address: 192.168.0.100 Netmask: 255.255.255.0 Hostname: node01.tecmint.com Domain name: tecmint.com Gateway: 192.168.0.1 DNS Server 1: 8.8.8.8 DNS Server 2: 4.4.4.4
Configure Static IP Address in RHEL/CentOS/Fedora:
To configure static IP address in RHEL / CentOS / Fedora, you will need to edit:
/etc/sysconfig/network /etc/sysconfig/network-scripts/ifcfg-eth0
Where in the above «ifcfg-eth0″ answers to your network interface eth0 . If your interface is named “ eth1» then the file that you will need to edit is «ifcfg-eth1» .
Let’s start with the first file:
NETWORKING=yes HOSTNAME=node01.tecmint.com GATEWAY=192.168.0.1 NETWORKING_IPV6=no IPV6INIT=no
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
Note: Make sure to open the file corresponding to your network interface. You can find your network interface name with ifconfig -a command.
In that file make the following changes:
DEVICE="eth0" BOOTPROTO="static" DNS1="8.8.8.8" DNS2="4.4.4.4" GATEWAY="192.168.0.1" HOSTNAME="node01.tecmint.com" HWADDR="00:19:99:A4:46:AB" IPADDR="192.68.0.100" NETMASK="255.255.255.0" NM_CONTROLLED="yes" ONBOOT="yes" TYPE="Ethernet" UUID="8105c095-799b-4f5a-a445-c6d7c3681f07"
You will only need to edit the settings for:
Other settings should have already been predefined.
Next edit resolve.conf file by opening it with a text editor such as nano or vi:
nameserver 8.8.8.8 # Replace with your nameserver ip nameserver 4.4.4.4 # Replace with your nameserver ip
Once you have made your changes restart the networking with:
# /etc/init.d/network restart [On SysVinit] # systemctl restart network [On SystemD]
Set Static IP Address in Debian / Ubuntu
To setup static IP address in Debian/ Ubuntu, open the following file:
# nano /etc/network/interfaces
You may see a line looking like this:
auto eth0 iface eth0 inet dhcp
Change it so it looks like this:
auto eth0 iface eth0 inet static address 192.168.0.100 netmask 255.255.255.0 gateway 192.168.0.1 dns-nameservers 4.4.4.4 dns-nameservers 8.8.8.8
Save the file and then edit /etc/resolv.conf like this:
nameserver 8.8.8.8 # Replace with your nameserver ip nameserver 4.4.4.4 # Replace with your nameserver ip
Restart the networking on your system with:
# /etc/init.d/network restart [On SysVinit] # systemctl restart network [On SystemD]
Your static IP address has been configured.
Conclusion:
You now know how to configure a static IP address on a Linux distro. If you have any questions or comments, please do not hesitate to submit them in the comment section below.
How to set static IP address?
I have configured network adapter of guest Ubuntu to work in a bridged mode so I could ssh to it from the host machine. The problem is that the guest Ubuntu ip address keep changing. Even though it changes within a very short range 192.168.0.4-10 it is still takes time to configure Putty and other programs each time. Is there a way to make the guest Ubuntu ip address to be static? My guest OS has the full GUI.
7 Answers 7
To give static ip address graphically
1.Go to network connections
2.Then edit the connections in the wired settings
3.Add the ip address for the system
Here are the images below
If you are curious, You can find newly created connection from the above steps as configurations file at /etc/NetworkManager/system-connections
You are the champion. With you answer I managed to configure my Ubuntu and Fedora in a seconds. Though I had to restar the Fedora.
This was a temporary solution for me. It worked while I struggled to configure two routers to work together. Then it failed and I had to switch back to automatic DHCP. BTW, the Ziggo/Cisco EPC3925 wireless/cableTV gateway/router is a flaming POS.
Edit /etc/network/interfaces to reflect something like this:
# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface auto eth0 iface eth0 inet static address 192.168.0.X netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255 gateway 192.168.0.X dns-nameservers 192.168.0.X
sudo /etc/init.d/networking restart
And that will get you fixed up.
Correction: /etc/network/interfaces. Also, if the static address is routable (in DNS, instead of e.g. 192.168.x.x), edit /etc/hosts and /etc/hostname to match.
Setting Static IP
sudo nano /etc/network/interfaces # I use vi instead of nano
When you open up the interfaces doc, you will see something like this:
auto lo eth0 iface lo inet loopback iface eth0 inet dynamic
You want to change it to incorporate the following:
auto lo eth0 iface lo inet loopback iface eth0 inet static address xxx.xxx.xxx.xxx (enter your ip here) netmask xxx.xxx.xxx.xxx (mine was 255.255.255.0) gateway xxx.xxx.xxx.xxx (enter gateway ip here,usually the address of the router)
Save your changes and exit.
Then I needed to add some dns info to resolv.conf so I opened up the file like so:
sudo nano /etc/resolv.conf # I use vi instead of nano
Initially this file is empty excluding a warning of «Do not put anything in here it will be overwritten». I added the following information none the less.
This is the format:
nameserver xxx.xxx.xxx.xxx(enter your dns server ip) nameserver xxx.xxx.xxx.xxx(enter your alt dns server ip)
nameserver 8.8.8.8 nameserver 8.8.4.4
Save your changes and exit.
At this point you can either restart networking:
sudo /etc/init.d/networking restart
or reboot which is what I did:
Once I was logged back in I tried the install again of pure-ftpd and all is good:
I hope this helps someone, I looked around for the fix and just happened upon it by accident.