Настройка сети в Linux
Введение | |
Получить список сетевых интерфейсов (ip a) | |
Установить статический IP | |
Включить (up) / Выключить (down) сетевой интерфейс | |
Изменить gateway | |
Ислючить контейнеры | |
Похожие статьи |
Введение
Настройка сети это одно из самых частых действий администратора Linux
Это статья общего характера. Смотрите также статьи
Настройка сети с помощью Iproute2
Чтобы получить список интерфейсов нужно воспользоваться командой
ip a
На выходе будет что-то похожее на
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 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: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 30:f9:ed:d9:ea:d3 brd ff:ff:ff:ff:ff:ff inet 192.0.2.131/24 brd 192.0.2.255 scope global enp3s0 valid_lft forever preferred_lft forever inet6 fe80::32f9:edff:fed9:ead3/64 scope link valid_lft forever preferred_lft forever 3: wlp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000 link/ether b8:76:3f:f5:c4:1f brd ff:ff:ff:ff:ff:ff inet 192.168.43.4/24 brd 192.168.43.255 scope global dynamic noprefixroute wlp1s0 valid_lft 2800sec preferred_lft 2800sec inet6 fe80::ba76:3fff:fef5:c41f/64 scope link noprefixroute valid_lft forever preferred_lft forever
1: Первый интерфейс это
lo
он направлен на локальную машину и имеет IP
127.0.0.1/8
2: Второй интерфейс
enp3s0 это моё поключение к по Ethernet к другому ПК.
В этом примере компьютер с Debian (1) соединён с компьютером
с
Windows
(2) напрямую через Ethernet кабель
Через это подключение я захожу на комп номер 1 по SSH.
IP компьютера с Debian вы видите выше
192.0.2.131/24
, а у компа с Windows IP
192.0.2.130/24
его здесь, естественно не видно.
Как настроить этот IP читайте
дальше
3: Третий интефейс
wlp1s0
это подключение к местному Wi-Fi от мобильного телефона.
IP получен динамически
192.168.43.4/24
Раньше интерфейсы назывались eth0 , eth1 и так далее, сейчас у них более разнообразные названия.
enp0s31f6: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500 ether 54:05:db:cd:b2:af txqueuelen 1000 (Ethernet) RX packets 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 0 bytes 0 (0.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 device interrupt 16 memory 0xef380000-ef3a0000 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10<host> loop txqueuelen 1000 (Local Loopback) RX packets 2465 bytes 795656 (795.6 KB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 2465 bytes 795656 (795.6 KB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 vboxnet0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.56.1 netmask 255.255.255.0 broadcast 192.168.56.255 inet6 fe80::800:27ff:fe00:0 prefixlen 64 scopeid 0x20<link> ether 0a:00:27:00:00:00 txqueuelen 1000 (Ethernet) RX packets 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 678 bytes 51442 (51.4 KB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 wlp0s20f3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 10.1.70.158 netmask 255.255.240.0 broadcast 10.1.79.255 inet6 fe80::9708:9f80:20b5:4777 prefixlen 64 scopeid 0x20<link> ether 8c:8d:28:c5:a2:2e txqueuelen 1000 (Ethernet) RX packets 1103516 bytes 1061399166 (1.0 GB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 320242 bytes 110222925 (110.2 MB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Как установить статический IP
Чтобы подлкючиться к другому компьютеру через Ethernet нужно в Windows выставить
параметры адаптера через контольную панель. То же самое нужно было сделать и
в Linux.
Для этого нужно выполнить команду
sudo vi /etc/network/interfaces
И добавить туда
auto enp3s0
iface enp3s0 inet static
address 192.0.2.131
netmask 255.255.255.0
dns-nameservers 8.8.8.8,8.8.4.4
auto wlp1s0
iface wlp1s0 inet dhcp
Обратите внимание, что gateway не указан.
И перезапустить сеть
/etc/init.d/networking restart
или
sudo service networking restart
Второй вариант проще запомнить, но, чтобы он заработал нужно наличие service
Теперь если у Вас установлен SSH можно зайти на компьютер с Linux по ssh с помощью
Putty
или
MobaXterm
Если нужно установить SSH выполните
sudo apt install openssh-server
sudo apt-get install openssh-client
Включить / Выключить сетевой интерфейс
ВКЛЮЧИТЬ интерфейс enp0s25:
ip link set dev enp0s25 up
ВЫКЛЮЧИТЬ интерфейс enp0s25:
ip link set dev enp0s25 down
Изменить Gateway
Удаление старого gateway
route delete default
Добавление нового gateway
route add default gw IP_Address
Если старых gateway много, то нужно указать какой конкретно IP с какого интерфейса удалить
route delete default gw 10.0.0.1 eth0
Для создания тоже можно указать конкретные данные
route add default gw 192.168.0.1 eth0
Изменить netmask
Что такое netmask или маска подсети вы можете узнать в статье
«Компьютерные сети»
Узнать свою маску
ip r
default via 10.6.0.1 dev eth0
10.6.0.0/8 dev eth0 src 10.6.1.68
Удалить старую
ip address del 10.6.1.100/8 dev eth0
Добавить новую
ip address add 10.6.1.68/22 dev eth0
Не показывать адреса контейнеров
Если вам нужно узнать IP адрес хоста, а на нём запущено много Docker контейнеров команда ip a выдаст адреса всех конейров в виде огромного массива данных
hellip; 5372: veth45acf64@if5371: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master docker0 state UP group default link/ether 12:96:a4:3a:6a:b6 brd ff:ff:ff:ff:ff:ff link-netnsid 45 inet6 fe80::1096:a4ff:fe3a:6ab6/64 scope link valid_lft forever preferred_lft forever 5630: veth3ed30f0@if5629: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master docker0 state UP group default link/ether de:42:f9:e3:63:8b brd ff:ff:ff:ff:ff:ff link-netnsid 174 inet6 fe80::dc42:f9ff:fee3:638b/64 scope link valid_lft forever preferred_lft forever 5374: veth8ff79d3@if5373: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master docker0 state UP group default link/ether 9e:55:23:e1:a8:f0 brd ff:ff:ff:ff:ff:ff link-netnsid 46 inet6 fe80::9c55:23ff:fee1:a8f0/64 scope link valid_lft forever preferred_lft forever hellip;
Чтобы не продираться сквозь эти дебри можно воспользоваться командой grep
ip a | grep brd | grep scope
inet 10.1.102.104/21 brd 10.1.103.255 scope global dynamic noprefixroute ens33 inet 10.15.253.231/15 brd 10.15.255.255 scope global dynamic noprefixroute ens34 inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
Сеть | |
Настройка сети в Debian | |
Настройка сети в Ubuntu | |
Настройка сети в CentOS | |
Настройка сети в Rocky | |
Linux | |
ifconfig | |
firewall | |
iptables | |
etc/hosts | |
eth0 | |
ip | |
SSH | |
SCP | |
Компьютерные сети |