🖧 Как проверить IPv4-адреса в скрипте |

🖧 Как проверить IPv4-адреса в скрипте

Скрипты

Проверка IP-адресов – распространенная задача в сетевом и системном администрировании.

В этом уроке мы узнаем, как проверить IPv4-адреса с помощью скрипта оболочки.

Это особенно полезно в ситуациях, когда нужно убедиться, что пользовательский ввод или данные из другого источника имеют правильный формат IPv4.

IPv4 против IPv6: В чем разница между IPv4 и IPv6

Понимание формата адресов IPv4

IPv4-адрес состоит из четырех октетов, каждый из которых имеет значение от 0 до 255 и разделен точками.

Например, 192.168.1.1 – это правильный IPv4-адрес.

Bash-скрипт для проверки адреса IPv4

Откройте свой любимый текстовый редактор и запустите новый файл.

Мы будем использовать функцию для проверки IPv4-адреса.

Эта функция использует регулярные выражения для проверки соответствия вводимых данных шаблону IPv4.

#!/bin/bash
# Filename: validate_ip.sh

validate_ip() {
    local ip=$1
    local stat=1

    if [[ $ip =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]]; then
        OIFS=$IFS
        IFS='.'
        ip=($ip)
        IFS=$OIFS
        [[ ${ip[0]} -le 255 && ${ip[1]} -le 255 && ${ip[2]} -le 255 && ${ip[3]} -le 255 ]]
        stat=$?
    fi

    return $stat
}

echo -n "Enter IPv4 address: "
read ip_address

if validate_ip $ip_address; then
    echo "${ip_address} is a valid IPv4 address."
else
    echo "${ip_address} is a invalid IPv4 address."
fi

Проверка скрипта

  • Сделайте скрипт исполняемым: chmod +x validate_ip.sh
  • Запустите скрипт: ./validate_ip.sh
  • Введите IPv4-адрес, когда появится запрос.

Заключение

С помощью этого простого скрипта вы можете легко проверять IPv4-адреса.

Этот скрипт можно интегрировать в более крупные проекты или использовать отдельно в сценариях, связанных с сетью.

Не стесняйтесь модифицировать и расширять его в соответствии с вашими потребностями.

Например, вы можете захотеть обрабатывать несколько IP-адресов из файла или включить дополнительное протоколирование недействительных вводов.

см. также:

Пожалуйста, не спамьте и никого не оскорбляйте. Это поле для комментариев, а не спамбокс. Рекламные ссылки не индексируются!
Добавить комментарий