Инструменты пользователя

Инструменты сайта


linux:overall:network

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
linux:overall:network [2021/04/20 10:36]
admin создано
linux:overall:network [2025/02/24 16:29] (текущий)
admin
Строка 1: Строка 1:
 ====== Работа с сетью ====== ====== Работа с сетью ======
  
-===== ip ===== +Настройки DNS хранятся в файле **/etc/resolv.conf**, строки вида**nameserver 8.8.8.8**
-Утилита для работы с сетью.\\ +
-Формат: **ip [опции] объект команда [параметры]**.\\+
  
-==== Опции====+===== Утилита ip ====
 +Формат: **ip [опции] объект команда [параметры]**.\\
   * **-h, -human** - удобочитаемая версия   * **-h, -human** - удобочитаемая версия
   * **-s, -stats** - статистическая информация   * **-s, -stats** - статистическая информация
Строка 11: Строка 10:
   * **-a, -all** - применить команду ко всем интерфейсам   * **-a, -all** - применить команду ко всем интерфейсам
   * **-br, -brief** - выводить только базовую информацию   * **-br, -brief** - выводить только базовую информацию
-  +
-==== Объекты: ====+
   * **a, address** - адреса   * **a, address** - адреса
   * **l, link** - физическое устр-во   * **l, link** - физическое устр-во
Строка 19: Строка 17:
   * **ru, rule** -правила маршрутизации   * **ru, rule** -правила маршрутизации
   * **t, tunnel** -  настройка туннелирования   * **t, tunnel** -  настройка туннелирования
 +<details>
 +<summary>:!: Примеры </summary>
 +<code bash>
 +  # просмотр адресов [краткая форма]
 +ip [-br] a [[dev] eth0]
  
-==== Примеры: ==== +  # только статические (динамические) адреса 
-  * **ip [-br] a [[dev] eth0]** - просмотр адресов [краткая форма] +ip addr show dev <eth0> permanent (dynamic)
-  * **# ip addr show dev <eth0> permanent (dynamic)** - только статические (динамические) адреса +
-  * **# ip addr add (del) <ip>/<mask> dev <eth0>** - добавить (удалить) ip +
-  * **# ip a flush [to <mask>]** - удалить все адреса [все в этой подсети] +
-  * **# ip l (link show)** - список интерфейсов +
-  * **# ip l set dev <eth0> <down/up>** - включение/выключение интерфейсов +
-  * **# ip route show** - просмотр маршрута +
-  * - +
-  * **# ip l set <eth0> promisc on (off)** - смешанный режим +
-  * **# ip l set dev <eth0> address <mac>** - установить MAC  +
-  * **# ip n (neigh show)** - просмотр ARP +
-  * **# ip neigh add <ip> lladdr <mac> dev <eth0>** - добавить ARP +
-  * **# ip neigh flush [dev <eth0>]** - очистить ARP+
  
-===== ss (замена netstat) =====+  # добавить (удалить) ip 
 +ip addr add (del) <ip>/<mask> dev <eth0> 
 + 
 +  # удалить все адреса [все в этой подсети] 
 +ip a flush [to <mask>
 + 
 +  # список интерфейсов 
 +ip l (link show) 
 + 
 +  # включение/выключение интерфейсов 
 +ip l set dev <eth0> <down/up> 
 +  # Либо так 
 +ifup eth0 / ifdown eth0 
 + 
 +  # просмотр маршрута 
 +ip route show 
 + 
 +  # смешанный режим 
 +ip l set <eth0> promisc on (off) 
 + 
 +  # установить MAC 
 +ip l set dev <eth0> address <mac>  
 + 
 +  # просмотр ARP 
 +ip n (neigh show) 
 + 
 +  # добавить ARP 
 +ip neigh add <ip> lladdr <mac> dev <eth0> 
 + 
 +  # очистить ARP 
 +ip neigh flush [dev <eth0>
 +</code> 
 +</details> 
 + 
 + 
 +<details> 
 +<summary>:!: Маршрутизация</summary> 
 +<code bash> 
 +  # Добавить маршрут 
 +ip route add <network>/<netmask> via <gateway> dev <interface> 
 + 
 +ip route add 192.168.1.0/24 dev eth0 
 +ip route add 192.168.2.0/24 via 192.168.2.254 dev eth0 
 + 
 +ip route add default via 192.168.1.254 
 + 
 +  # Удалить маршрут 
 +ip route delete [destin]/24 
 +</code> 
 +</details> 
 + 
 + 
 + 
 + 
 +===== Утилита ss =====
 Утилита для **просмотра** текущих **соединений** и открытых **портов**.\\ Утилита для **просмотра** текущих **соединений** и открытых **портов**.\\
 Главное отличие от netstat в том, что она построена на базе **отдельной подсистемы**, в то время как netstat сканировала всю директорию /proc.\\ Главное отличие от netstat в том, что она построена на базе **отдельной подсистемы**, в то время как netstat сканировала всю директорию /proc.\\
Строка 47: Строка 92:
   * **-s** - статистика использования сокета   * **-s** - статистика использования сокета
   * **-D (-F)** - экспортировать в файл (открыть файл)   * **-D (-F)** - экспортировать в файл (открыть файл)
-  *  
   * **-4, --ipv4 (-6, --ipv6)** - только IPv4 (IPv6)   * **-4, --ipv4 (-6, --ipv6)** - только IPv4 (IPv6)
   * **-t, --tcp (-u, --udp)** - tcp (udp)   * **-t, --tcp (-u, --udp)** - tcp (udp)
Строка 53: Строка 97:
   * **-f [protocol]** - для указания протокола   * **-f [protocol]** - для указания протокола
  
-==== Примеры ==== +<details> 
-  * **# ss ** все сетевые подключения +<summary>:!: Примеры </summary> 
-  * **ss -t (-ua)** - только tcp (udp) соединения +<code bash> 
-  * **# ss -t4 state established** - только установленные соединения +  #  
-    * **syn-sent[-recv]**, **time-wait**, **closed[-wait]**, **last-ack**, **fin-wait-1[-2]**, **closing**, +ss -ntlup 
-  * **# ss -nt '(dst:443 or sport != :ssh)'** - фильтрация диапазоном портов + 
-  * **# ss -nt dst 8.8.8.8 [:53]** - фильтрация по ip [порт] +  # только tcp (udp) соединения 
-  * **ss ** - +ss -t (-ua) 
 + 
 +  # только установленные соединения 
 +ss -t4 state established 
 +  syn-sent[-recv]**, **time-wait**, **closed[-wait]**, **last-ack**, **fin-wait-1[-2]**, **closing**, 
 + 
 +  # фильтрация диапазоном портов 
 +ss -nt '(dst:443 or sport != :ssh)' 
 + 
 +  # фильтрация по ip [порт] 
 +ss -nt dst 8.8.8.8 [:53] 
 +</code> 
 +</details> 
 + 
 + 
 +===== Трафик ===== 
 +trafshow\\ 
 +iftop\\ 
 + 
 +===== Маршрутизация ===== 
 +<details> 
 +<summary>:!: Примеры </summary> 
 +<code bash> 
 +  # info 
 +route (routel) (ip route) 
 + 
 +  # Добавить маршрут 
 +ip route add <ip/mask куда> via <gateway> dev <device> 
 +ip route add 10.200.192.25 via 10.4.0.248 dev tun1 
 + 
 +  #  
 +ip route del 122.252.228.38/32 
 + 
 +  # 
 + 
 +</code> 
 +</details> 
  
-===== DNS ===== 
-Настройки DNS хранятся в файле **/etc/resolv.conf**, строки вида: **nameserver 8.8.8.8** 
  
 ===== Трассировка ===== ===== Трассировка =====
Строка 73: Строка 152:
   * **-P** - протокол (raw, dccp, udplite, udp, tcpconn, tcp, icmp)   * **-P** - протокол (raw, dccp, udplite, udp, tcpconn, tcp, icmp)
 <code bash># traceroute ya.ru </code> <code bash># traceroute ya.ru </code>
 +
 +
 +
 +===== curl =====
 +<details>
 +<summary>:!: Примеры </summary>
 +<code bash>
 +  # Внешний IP адрес
 +curl "http://2ip.ru"
 +</code>
 +</details>
 +
 +
 +===== Overall =====
 +<code bash>
 +  # Драйвера сетевых устройств
 +lspci
 +
 +  # Драйвера сетевых протоколов
 +lsmod
 +</code>
 +
 +
 +===== Сетевая служба =====
 +<code bash>
 +nmcli -o 
 +systemctl status NetworkManager
 +
 +nmcli networking off[on]
 +systemctl restart NetworkManager
 +
 +  #
 +
 +
 +</code>
 +
 +
 +
 +===== Настройка статики/NAT =====
 +**Almalinux**\\
 +/etc/sysconfig/network-scripts/ifcfg-enp0s3\\
 +{{:linux:overall:statisip_almalinux.png?direct&600|}}
 +
 +**Debian**\\
 +:!: ВАЖНО\\
 +Для работы "**dns-nameservers**" нужен пакет "**resolvconf**"\\
 +
 +/etc/network/interfaces\\
 +{{:linux:overall:2024-08-10_13-10.png?direct&400|}}\\
 +
 +Для рестарта достаточно выключить/включить интерфейс:\\
 +<code bash>
 +sudo bash -c "ifdown enp0s3 && ifup enp0s3"
 +</code>
 +
  
  
linux/overall/network.1618914981.txt.gz · Последнее изменение: 2021/04/20 10:36 — admin