Содержание

https://wiki.debian.org/NetworkConfiguration

Локальный IP

Команда Описание
ip -4 -c a Посмотреть текущий IP адрес, только ip4 и с выделением цвета
ip addr add 192.168.1.35/24 dev eth0Добавить дополнительный ip адрес для интерфейса eth0

Узнать внешний IP

Вывод в консоли внешнего адреса, PTR, провайдера сервера и страны на основе ipinfo.io

echo -e "\n\e[1;32m $(curl -s  ipinfo.io/ip) \e[1;33m $(curl -s  ipinfo.io/hostname) \e[1;36m $(curl -s ipinfo.io/org)\e[1;35m $(curl -s ipinfo.io/country) \e[0m\n "

или

MyIP=$(curl -s ipinfo.io/ip) \\
echo -e "\n\e[1;32m $MyIP \e[1;33m $(dig -x $MyIP +short) \e[1;36m $(curl -s ipinfo.io/org)\e[1;35m $(curl -s ipinfo.io/country) \e[0m\n "

или

curl -s http://checkip.dyndns.org | sed 's/[a-zA-Z<>/ :]//g'

Способ с myip.opendns.com

Отправляется запрос на IP-адрес домена myip.opendns.com на DNS-сервер resolver1.opendns.com. Этот сервер запрограммирован таким образом, что при запросе этого специального домена в ответ отправляется IP, с которого поступил запрос.

dig +short myip.opendns.com @resolver1.opendns.com

Файл конфигурации Debian

sudo vim /etc/network/interfaces
auto lo
iface lo inet loopback
 
allow-hotplug wlan0
iface eth0 inet dhcp
 
auto eth0
iface eth0 inet manual #manual - нет настроек по умолчанию и может настриватся сценариями из  /etc/network/if-*.d.|
 
auto eth1 
allow-hotplug eth1
iface eth1 inet static
address 192.168.2.9
netmask 255.255.255.0
network 192.168.2.0
broadcast 192.168.2.255
gateway 192.168.2.1
dns-domain example.com
dns-nameservers 8.8.8.8

Файл конфигурации Centos

Посмотреть расположение файла сетевых настроек

sudo nmcli -f NAME,DEVICE,FILENAME connection show

или

sudo vim /etc/sysconfig/network-scripts/ifcfg-e[имя сетевого устройства]
| /etc/sysconfig/network-scripts/ifcfg-e
#Old Centos 7
 
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static   #BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
NAME=ens33
UUID=f5e4118c-dc69-4bc4-9221-74f42ab12970
DEVICE=ens33
ONBOOT=yes
HWADDR="ac:1f:6b:f6:3b:7e" #Можно не указывать
 
IPADDR=192.168.1.11
NETMASK=255.255.255.0 #PREFIX="24"
GATEWAY=192.168.1.1
DNS1=192.168.1.1
DNS2=8.8.8.8

Адрес DNS должен автоматом попасть в /etc/resolv.conf

Команда Описание
sudo systemctl restart NetworkManagerрестарт сети после изменения файла конфигурации
nmcliУтилита для управления NetworkManager и получения статуса сети, подробнее по ссылке ниже
nmcli dпросмотр статуса текущего подключения
nmtui настройка сети через графику

Настройки DNS

Клиенты могут брать настройки DNS из

Windows шлет DNS запросы одновременно на все сервера, но обязательно дожидается ответа или таймаута от 1-го. Linux сначала обращается к 1-му DNS в списке и только в случае ошибки переходит к следующему.

DIG просмотр DNS записей

DIG онлайн

Команда Описание
dig -vПосмотреть версию
sudo apt-get install dnsutilsУстановка в Debian / Ubuntu
sudo yum install bind-utilsУстановка в CentOS / RedHat
dig [server] [name] [type]
dig @8.8.8.8 google.com запросить запись google.com у сервера 8.8.8.8
dig google.com ANYПолучить все записи
dig google.com TXTПолучить TXT записи
dig google.com +noall +answer Получение детальной информации
dig google.com +trace Трассировка DNS запроса
dig +noall +answer -x 172.217.14.23
dig @8.8.4.4 mail.ru -t mx +short получить MX записи для домена mail.ru в коротком виде

DIG в цвете

Добавить в .bashrc

dig-color () {
  dig $* | awk '
    !/^;/    { print "\033[1;32m"$0 }
    /^;[^;]/ { print "\033[1;35m"$0 }
    /^;;/    { print "\033[1;36m"$0 }
    END      { print "\033[0m" }
  ';
}

Вариант 2

Информация о домене для почтового администратора.

#!/bin/bash
#trap 'echo "# $BASH_COMMAND";read' DEBUG
 
BLACK='\e[30m'
RED='\e[31m'
GREEN='\e[32m'
YELLOW='\e[33m'
BLUE='\e[34m'
MAGENTA='\e[35m'
CYAN='\e[36am'
 
ENDCOLOR='\e[0m'
 
LIGHTRED='\e[91m'
LIGHTGREEN='\e[92m'
LIGHTYELLOW='\e[93m'
LIGHTBLUE='\e[94m'
LIGHTMAGENTA='\e[95m'
LIGHTCYAN='\e[96m'
WHITE='\e[97m'
 
BGRED='\e[41m'
BGGREEN='\e[42m'
BGYELLOW='\e[43m'
BGMAGENTA='\e[45m'
BGCYAN='\e[46m'
 
BOLDGREEN="\e[1;${GREEN}m"
ITALICRED="\e[3;${RED}m"
PINK="\e[38;5;198m"
BGPINK="\e[48;5;198m"
 
echo -e "\n${WHITE}${BGRED}----- $* -----${ENDCOLOR}"
 
echo -e "\n${BLACK}${BGGREEN}----------- A ----------${ENDCOLOR}${LIGHTGREEN}"
dig $* A  +short
 
echo -e "\n${BLACK}${BGPINK}---------- MX ----------${ENDCOLOR}${PINK}"
 
  mxhosts=$(dig $* MX  +short | sort|sed 's/ /_/')
 
for mxserver in $mxhosts; do
        mxservername=$(echo $mxserver | sed -r  's/.*_(.*)\.$/\1/')
  echo -e "\n--- $mxserver --- "
  timeout 1 echo 'QUIT' | nc $mxservername 25
done
 
echo -e "\n${BLACK}${BGYELLOW}------ MX->IP->PTR -----${ENDCOLOR}${YELLOW}"
 
for i in `dig mx +short $*|cut -f2 -d ' '`; do
iphost=`dig a +short $i`
 
iplist=$(echo -e $iphost |  sed ':a;N;$!ba;s/\n/ /g')
 
echo -e "Host:\t$i\t\t$iplist"
  for y in $iphost;do
   ptrdns=`dig -x $y +short`
 
#   echo -e "\t$y\t\t$ptrdns"
                if [ -n "$ptrdns" ]; then
           echo -e "\t$y\t\t$ptrdns"
                   echo -e "\t$ptrdns\t\t$(echo `dig a +short $ptrdns`|sed ':a;N;$!ba;s/\n/ /g')";
        else
                   echo -e "\t$y\t\tPTR not found"
                fi
 
  done
done
 
echo -e "\n${BLACK}${BGMAGENTA}--------- TXT ----------${ENDCOLOR}${LIGHTMAGENTA}"
dig $* TXT  +short |grep -e "spf" --color=never
 
echo -e "\n${BLACK}${BGCYAN}--------- DMARC --------${ENDCOLOR}${LIGHTCYAN}"
dig _dmarc.$* TXT +short
echo -e "\033[0m"
: 'Комментарий
 
'

DHCP

IPV6

Отключение IPV6

в sysctl.conf

$ vim /etc/sysctl.conf

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
net.ipv6.conf.eth0.disable_ipv6 = 1

Затем выполняем

$ ss -lnptu | sort $ sysctl -p

в grub

$ sudo vim /etc/default/grub

GRUB_CMDLINE_LINUX_DEFAULT="ipv6.disable=1 quiet splash"

$ sudo update-grub

resolvconf

Начиная с Debian 10 запрещено ручное изменение файла /etc/resolv.conf - для его модификации существует специальная служба resolvconf.

Установка resolvconf

sudo apt-get install resolvconf -y
sudo systemctl status resolvconf
sudo systemctl start resolvconf.service
sudo systemctl enable resolvconf.service
sudo systemctl status resolvconf.service

Настраиваем нужные NS

  sudo vim /etc/resolvconf/resolv.conf.d/head
     nameserver 46.8.61.10
     nameserver 46.8.61.20
     nameserver 8.8.8.8

После проделанных действий запускаем команду ниже или отправляем сервер в ребут командой reboot

    sudo resolvconf -u   #Обновляет resolv.conf

На этом настройка NS и редактирование файла /etc/resolv.conf завершено. Проверяем что у нас в файле #cat /etc/resolv.conf

сброс кэша DNS. Он выполняется командой resolvectl flush-caches. При её выполнении в консоль не происходит никакого вывода

перезапуск службы через systemctl restart systemd-resolved.service

netstat

Команда Описание
sudo apt install net-toolsУстановка в Debian, Ubuntu and Mint
sudo yum install net-toolsУстановка в RHEL/CentOS/Fedora and Roc
sudo netstat -an | grep ESTABLISHED текущие соединения
sudo netstat -ntlp список IP, портов и сервисов
sudo netstat -tulpn | grep LISTENПорты, которые слушает хост
sudo ss -tulpn
sudo ss -tulpn | column -s' 'Вывод в виде таблицы
sudo ss -tulpn | grep :3306

netcat

Команда Описание
sudo nc -zv 192.168.31.5 22 Проверка доступности порта TCP
sudo nc -ul 5555 Поднимаем сервис на порте 5555 UDP, набираемые в клиенте буквы будут отображаться на сервере
sudo nc -u 192.168.31.5 5555 Проверка доступности порта UDP

ss

Команда Описание
ss -aСписок всех сокетов
ss -n4Отображение текущих установленных сессий, n - цифры, 4 - IP4
ss -nlt4Текущие слущающие сессии, за которыми есть демон
sudo ss -altnp4 \ grep sshdПосмотреть на каком порту сидит sshd

faill2Ban

Команда Описание
sudo zgrep 'Ban' /var/log/fail2ban.log*Посмотреть список забаненных IP

tcpdump

Команда Описание
sudo tcpdump -i <имя интерфейса> udp port 53Проверить доступность порта наружу, в одном терминале запустить команду, в другом выполнить запрос

MTU

sudo ip link set mtu 1500 <имя интерфейса>