Нужен bash-скрипт для замены статического IP-адреса на новый IP-адрес

Нужен bash-скрипт для замены статического IP-адреса на новый IP-адрес

Я хотел бы иметь скрипт bash для машины Centos. Я хочу, чтобы скрипт показывал мне текущий IP-адрес / маску подсети / GW по умолчанию. и давал мне возможность ввести новый IP-адрес / маску подсети / GW по умолчанию. Он должен сделать это для ETH0.

Может у кого-то есть идеи, как это сделать?

Спасибо!!

решение1

Я не буду расписывать все за вас, но вот кое-что, что работает в Ubuntu:

ifconfig eth0 | grep "inet addr:" | awk -F: '{ print $2 }' | awk '{ print $1 }'

Это отобразит текущий IP-адрес в eth0.

решение2

ifconfig(1) — стандартная команда для управления IP-параметрами интерфейсов. Смотрите, man ifconfigкак ее использовать, но, например,

ifconfig eth0 192.168.0.1 netmask 255.255.255.0

установит IP-адрес и маску сети для eth0.

Чтобы прочитать параметры интерфейса, вы можете использовать grep/sed/perl для анализа вывода ifconfig eth0, но если у вас есть команда ifdata, менее болезненный способ получить, например, только IP-адрес, это

ifdata -pa eth0

В Ubuntu ifdata является частью moreutilsпакета.

Связанный контент