Centos 네트워크 인터페이스의 백업 및 복구

Centos 네트워크 인터페이스의 백업 및 복구

일부 소프트웨어를 업그레이드하려면 재부팅이 필요한 Centos 7을 실행하는 서버가 있습니다.

일부 물리적 NIC에는 각각 약 5~10개의 VLAN 인터페이스가 있습니다. 매주/매월 단위로 변경될 수 있으므로 /etc/sysconfig/network-scripts재부팅 후에도 지속되도록 세부 정보를 저장하는 것은 비현실적입니다.

현재 네트워크 스택의 스냅샷을 만들고 재부팅 후 복원하는 쉬운 방법이 있습니까? iptables 규칙을 저장/복원하는 방법과 유사합니까?

몇 가지 참조를 찾았 system-config-network-cmd지만 이 도구를 사용하면 우리가 가지고 있는 물리적 인터페이스의 정적 구성을 덮어쓰게 되므로 사용하기가 조심스럽습니다./etc/sysconfig/network-scripts

감사해요!

답변1

Iptables는 질문의 가장 간단한 부분입니다.

iptables-save현재 iptables 규칙을 저장하는 데 사용할 수 있으며 이후 사용할 수 있습니다 iptables-restore.

# backup current iptables rules
iptables-save > /root/iptables-$(date +%F).save


# restore a previous set of iptables-rules
iptables-restore < /root/iptables-<date of file to restore>.save

작업의 네트워킹 부분의 경우 Network Manager 서비스(많은 사람들이 서버에서 사용하지 않음)를 사용하지 않는 system-config-network-cmd경우 nmtui|nmcli

처음에는 캡처된 출력과 유사한 자체 솔루션을 스크립팅한 ip addr show다음 이를 구문 분석하여 IP 배치 파일을 생성해야 합니다(참조:https://support.cumulusnetworks.com/hc/en-us/articles/202395708-Bringing-up-Large-Networks-Using-ip-batch유용한 정보) 그런 다음 배치 파일을 재생 ip --batch <batchfile>하고 세부 수준에 맞게 조정합니다. MAC이 동일해야 합니까? 다른 장치 옵션? 특정 VLAN이 있나요? 아니면 IP 주소가 모두 동일한 서브넷에 있다는 것입니까? 아, ip route show재부팅 후 필요한 임시 경로를 구성한 경우 해당 경로도 캡처할 수 있습니다.

장기적으로는 Ansible(또는 이와 유사한 것)을 사용하여 iptables임시 규칙 및 임시 네트워크 인터페이스 구성의 배포를 관리하는 것을 고려해 보십시오. 그런 다음 스크립트를 재생하여 모든 것을 이전 상태로 되돌릴 수 있습니다.

답변2

먼저, 반드시 확인해야 할 사항네트워크 관리자설치되어 있고 nmcli명령이 존재합니다.

그런 다음 다음을 통해 현재 네트워크 연결을 표시하십시오 nmcli.

# nmcli c
NAME                UUID                                  TYPE            DEVICE
enp0s3              346f92f2-e6b5-4464-b424-4083fb09e6ae  802-3-ethernet  enp0s3
enp0s8              537dd740-423a-42ab-8e62-d49a0e91de00  802-3-ethernet  enp0s8
enp0s8.10           1db1ea0f-f67e-4777-bd58-e4c6d36a8520  vlan            enp0s8.10
enp0s9              410c1405-b2fa-4182-900b-51defe29c681  802-3-ethernet  enp0s9

인터페이스가 enp0s8.10나를 추가하지 않았습니다네트워크 관리자. vconfig, ip l up및 에 추가했습니다 ip a.

인터페이스가 작동 중이어야 하며 IP 주소가 할당되어 있어야 합니다! 인터페이스가 작동하지 않거나 IP가 할당되지 않은 경우네트워크 관리자다음과 같이 표시됩니다.관리되지 않는.

nmcli그런 다음 활성 연결을 편집 할 수 있습니다 .

# nmcli connection edit enp0s8.10

===| nmcli interactive connection editor |===

Editing existing 'vlan' connection: 'enp0s8.10'

Type 'help' or '?' for available commands.
Type 'describe [<setting>.<prop>]' for detailed property description.

You may edit the following settings: connection, 802-3-ethernet (ethernet), vlan, ipv4, ipv6, proxy
nmcli> help
------------------------------------------------------------------------------
---[ Main menu ]---
goto     [<setting> | <prop>]        :: go to a setting or property
remove   <setting>[.<prop>] | <prop> :: remove setting or reset property value
set      [<setting>.<prop> <value>]  :: set property value
describe [<setting>.<prop>]          :: describe property
print    [all | <setting>[.<prop>]]  :: print the connection
verify   [all | fix]                 :: verify the connection
save     [persistent|temporary]      :: save the connection
activate [<ifname>] [/<ap>|<nsp>]    :: activate the connection
back                                 :: go one level up (back)
help/?   [<command>]                 :: print this help
nmcli    <conf-option> <value>       :: nmcli configuration
quit                                 :: exit nmcli
------------------------------------------------------------------------------
nmcli> save
Connection 'enp0s8.10' (1db1ea0f-f67e-4777-bd58-e4c6d36a8520) successfully updated.
nmcli> quit

/etc/sysconfig/network-scripts이 단계를 수행하면 파일에 인터페이스의 구성 파일이 표시됩니다 ifcfg-enp0s8.10(저의 경우처럼).

물론 모든 인터페이스를 확인해야 합니다.

관련 정보