Я новичок в программировании Linux и на основе некоторых параметров конфигурации хочу программно отключить и включить IPv4 в системе Linux. Псевдокод решения будет таким:
if(is_ipv4_enabled)
{
// enable IPv4 and IPv6
}
else
{
// disable IPv4 and enable IPv6
}
Таким образом, IPv6 будет включен в обоих случаях, но единственное, что нужно сделать - это отключить / включить IPv4.
Любая помощь будет оценена по достоинству. Заранее спасибо!
Выполните интеграцию со схемой конфигурации сети, совместимой с выбранной вами операционной системой.
В идеале, один с четко определенным API для выполнения этой задачи отключения IPv4. Например, в NetworkManager есть много способов установить ipv4.method инвалидам. Некоторые даже удобны для пользователя.
Также возможно развертывание файлов конфигурации. Это обычно требует привилегий root. И при создании шаблона для всего файла интерфейса не так просто переключить одну настройку, но не трогать что-либо еще.
вы можете просто удалить настроенные адреса ipv4 с помощью инструментов ip по умолчанию.
Что-то вроде:
ip address delete ip.ad.dr.ess dev ethx
или включите его:
ip address add ip.ad.dr.ess dev ethx
вы, конечно, должны знать, что это за адрес и интерфейс, которому он назначен, но это оставлено как упражнение для OP.