4.6. 네트워킹
nft
유틸리티는 nftables
규칙 포함 상태를 재설정할 수 있습니다.
이번 개선된 기능을 통해 nft reset
명령을 사용하여 nftables
규칙 포함 상태를 재설정할 수 있습니다. 예를 들어 이 기능을 사용하여 카운터 및 할당량 문 값을 재설정합니다.
Jira:RHEL-5980[1]
Marvell Octeon PCIe Endpoint Network Interface Controller 드라이버 사용 가능
이번 개선된 기능에는 octeon_ep
드라이버가 추가되었습니다. Marvell의 Octeon PCIe Endpoint 네트워크 인터페이스 카드의 네트워킹에 사용할 수 있습니다. 호스트 드라이버는 PCIe(PCIe) 엔드포인트 네트워크 인터페이스(NIC) 역할을 하여 24개의 N2 코어 인프라 프로세서 제품군인 Marvell OCTEON TX2 CN106XX를 지원합니다. PCIe NIC로 OCTEON TX2 드라이버를 사용하면 OCTEON TX2를 다양한 제품의 PCIe 엔드포인트로 사용할 수 있습니다: 보안 방화벽, 5G ORAN(Open radio Access Network) 및 VRAN(Virtual RAN) 애플리케이션 및 데이터 처리 오프로드 애플리케이션.
현재 다음 장치에서 사용할 수 있습니다.
- 네트워크 컨트롤러: Cavium, Inc. 장치 b100
- 네트워크 컨트롤러: Cavium, Inc. 장치 b200
- 네트워크 컨트롤러: Cavium, Inc. 장치 b400
- 네트워크 컨트롤러: Cavium, Inc. 장치 b900
- 네트워크 컨트롤러: Cavium, Inc. 장치 ba00
- 네트워크 컨트롤러: Cavium, Inc. 장치 bc00
- 네트워크 컨트롤러: Cavium, Inc. 장치 bd00
Jira:RHEL-9308[1]
NetworkManager에서 고급 하드웨어 오프로드를 위한 switchdev
모드 구성 지원
이번 개선된 기능을 통해 NetworkManager 연결 프로필에서 다음과 같은 새 속성을 구성할 수 있습니다.
-
sriov.eswitch-mode
-
sriov.eswitch-inline-mode
-
sriov.eswitch-encap-mode
이러한 속성을 사용하면 스마트 네트워크 인터페이스 컨트롤러(Smart NIC)의 eSwitch를 구성할 수 있습니다. 예를 들어 sriov.eswitch-mode
설정을 사용하여 고급 하드웨어 오프로드 기능을 사용하려면 기존 SR-IOV
에서 모드를 switchdev
로 변경합니다.
NetworkManager에서 ethtool
채널 설정 변경 지원
네트워크 인터페이스는 여러 개의 인터럽트 요청(IRQ) 및 채널이라는 관련 패킷 큐를 가질 수 있습니다
. 이번 개선된 기능을 통해 NetworkManager 연결 프로필은 연결 속성 ethtool.channels-rx
,ethtool.channels-tx
,ethtool.channels-other
, ethtool.channels-combined
를 통해 인터페이스에 할당할 채널 수를 지정할 수 있습니다.
Jira:RHEL-1471[1]
NMState에서 YAML 파일을 생성하여 설정을 되돌릴 수 있음
이번 개선된 기능을 통해 Nmstate는 현재 네트워크 설정과 적용하려는 새 구성을 사용하여 YAML 파일의 차이점이 포함된 "상위 구성 파일"을 생성할 수 있습니다. YAML 파일을 적용한 후 설정이 예상대로 작동하지 않는 경우 revert 구성 파일을 사용하여 이전 설정을 복원할 수 있습니다.
-
적용할 구성을 사용하여 YAML 파일(예:
new.yml
)을 만듭니다. new.yml
의 설정과 현재 상태 간의 차이가 포함된 되돌리기 구성 파일을 만듭니다.# nmstatectl gr new.yml > revert.yml
-
new.yml
의 구성을 적용합니다. -
이제 이전 상태로 다시 전환하려면
revert.yml
을 적용합니다.
또는 Nmstate API를 사용하여 되돌리기 구성을 생성하는 경우 NetworkState::generate_revert(current)
호출을 사용할 수 있습니다.
NMState API는 IPsec 구성을 기반으로 VPN 연결 구성
Libreswan 유틸리티는 VPN을 구성하기 위한 IPsec을 구현한 것입니다. 이번 업데이트를 통해 nmstatectl
을 사용하여 구성 모드(tunnel 및 transport) 및 네트워크 레이아웃(
)과 함께 IPsec 기반 인증 유형을 구성할 수 있습니다.
host-to-host
,subnet-to-subnet
NMState
에서 우선순위
본딩 속성 지원
이번 업데이트를 통해 구성 파일의 ports-config
섹션에서 priority
속성을 사용하여 nmstate
프레임워크에서 본딩 포트의 우선 순위를 설정할 수 있습니다. YAML 파일의 예는 다음과 같습니다.
--- interfaces: - name: bond99 type: bond state: up link-aggregation: mode: active-backup ports-config: - name: eth2 priority: 15
결합된 인터페이스 내의 활성 포트가 다운되면 RHEL 커널은 모든 백업 포트 풀에서 우선순위
속성에서 가장 높은 숫자 값이 있는 다음 활성 포트를 선택합니다.
priority
속성은 다음 본딩 인터페이스 모드와 관련이 있습니다.
-
active-backup
-
balance-tlb
-
balance-alb
Jira:RHEL-1438[1]
NetworkManager Cryostat 연결은 새로운 MAC 주소 기반 개인 정보 보호 옵션을 지원합니다.
이번 개선된 기능을 통해 임의의 MAC 주소를SSID(Service Set Identifier)와 연결하도록 NetworkManager를 구성할 수 있습니다. 이를 통해 연결 프로필을 삭제하고 다시 생성하더라도 임의의 MAC 주소를 영구적으로 사용할 수 있습니다. 이 새로운 기능을 사용하려면 Cryostat 연결 프로필의 802-11-wireless.cloned-mac-address
속성을 stable-ssid
로 설정합니다.
VLAN 인터페이스에 대한 새로운 nmstate
속성 도입
이 nmstate
프레임워크 업데이트를 통해 다음 VLAN 속성이 도입되었습니다.
-
등록 프로토콜
: VLAN 등록 프로토콜. 유효한 값은gvrp
(GARP VLAN 등록 프로토콜),mvrp
(Multiple VLAN Registration Protocol) 및none
입니다. -
reorder-headers
: 출력 패킷 헤더를 다시 정렬합니다. 유효한 값은true
및false
입니다. -
loose-binding
: 인터페이스가 기본 장치의 작동 상태에 대한 느슨한 바인딩입니다. 유효한 값은true
및false
입니다.
YAML 구성 파일은 다음 예와 유사할 수 있습니다.
--- interfaces: - name: eth1.101 type: vlan state: up vlan: base-iface: eth1 id: 101 registration-protocol: mvrp loose-binding: true reorder-headers: true
ipv4.dhcp-client-id
를 none
으로 설정하면 client-identifier
가 전송되지 않습니다.
client-identifier
옵션이 NetworkManager에 설정되지 않은 경우 실제 값은 NetworkManager 내부
DHCP 클라이언트 또는 dhclient
와 같이 사용 중인 DHCP 클라이언트 유형에 따라 다릅니다. 일반적으로 DHCP 클라이언트는 클라이언트 ID를 전송합니다
. 따라서 거의 모든 경우에 none
옵션을 설정할 필요가 없습니다. 결과적으로 이 옵션은 클라이언트가 클라이언트 ID를 보내지 않아야 하는 일부 비정상적인 DHCP 서버 구성의 경우에만 유용합니다
.
NMState
에서 MACsec 인터페이스 생성 지원
이번 업데이트를 통해 nmstate
프레임워크 사용자는 OSI(Open Systems Interconnection) 모델의 계층 2에서 통신을 보호하도록 MACsec 인터페이스를 구성할 수 있습니다. 따라서 나중에 계층 7에서 개별 서비스를 암호화할 필요가 없습니다. 또한 이 기능을 사용하면 각 끝점에 대한 대량의 인증서 관리와 같은 관련 문제가 제거됩니다.
자세한 내용은 nmstatectl을 사용하여 MACsec 연결 구성 을 참조하십시오.
Netfilter
업데이트
커널
패키지가 RHEL 9의 5.14.0-405 버전으로 업그레이드되었습니다. 결과적으로 리베이스는 RHEL 커널의 netfilter
구성 요소에 여러 개선 사항 및 버그 수정 사항도 제공했습니다. 주요 변경 사항은 다음과 같습니다.
-
nftables
하위 시스템은 터널 패킷의 다양한 내부 헤더 필드와 일치할 수 있습니다. 이를 통해 특히 터널링 프로토콜이 사용되는 환경에서 네트워크 트래픽을 보다 세밀하고 효과적으로 제어할 수 있습니다.
Jira:RHEL-16630[1]
이제 firewalld
에서 불필요한 방화벽 규칙 플러시 방지
firewalld
서비스는 다음 두 조건이 모두 충족되면 iptables
구성에서 기존 규칙을 모두 제거하지 않습니다.
-
firewalld
는nftables
백엔드를 사용하고 있습니다. -
--direct
옵션을 사용하여 생성된 방화벽 규칙은 없습니다.
이 변경으로 불필요한 작업(firewall 규칙 플러시)을 줄이고 다른 소프트웨어와의 통합을 개선하는 것을 목표로 합니다.
Jira:RHEL-427[1]
ss
유틸리티는 TCP 경계 소켓에 가시성 향상 기능 추가
iproute2
제품군은 TCP/IP 네트워킹 트래픽을 제어하는 유틸리티 컬렉션을 제공합니다. TCP 바인딩된 소켓은 IP 주소와 포트 번호에 연결되지만 TCP 포트에서 연결되거나 수신 대기하지 않습니다. 소켓 서비스(ss
) 유틸리티는 커널에 대한 지원을 추가하여 TCP 경계 소켓을 덤프합니다. 다음 명령 옵션을 사용하여 해당 소켓을 볼 수 있습니다.
-
SS --all
: TCP 바인딩된 활성 소켓을 포함한 모든 소켓을 덤프 -
SS --bound-inactive
: 바인딩된 소켓만 덤프
Jira:RHEL-21223[1]
Nmstate API에서 SR-IOV VLAN 802.1ad 태깅 지원
이번 개선된 기능을 통해 이제 Nmstate API를 사용하여 펌웨어가 이 기능을 지원하는 카드에 대해 하드웨어 가속화된 SR-IOV(Single-Root I/O Virtualization) VLAN(Virtual Local Area Network) 802.1ad 태그를 활성화할 수 있습니다.
TCP Illinois 연결 알고리즘 커널 모듈이 다시 활성화되어 있습니다.
TCP Illinois는 TCP 프로토콜의 변형입니다. 인터넷 서비스 공급자 (ISP)와 같은 고객은 TCP Illinois 알고리즘없이 하위 최적의 성능을 경험하며, 대기 시간이 길어지는 BBR (Bandwidth) 및 BBR (Round-trip propagation Time) 알고리즘을 사용하는 경우에도 네트워크 트래픽이 잘 확장되지 않습니다. 결과적으로 TCP Illinois 알고리즘은 평균 처리량이 약간 높고, 더 공정하게 네트워크 리소스 할당 및 호환성을 생성할 수 있습니다.
Jira:RHEL-5736[1]
iptables
유틸리티는 버전 1.8.10으로 재기반
iptables
유틸리티는 방화벽을 관리하기 위한 패킷 필터링 규칙을 정의합니다. 이 유틸리티는 다시 시작되었습니다. 주요 변경 사항은 다음과 같습니다.
주요 기능:
-
sctp
일치에서 최신 청크 유형 지원 추가 -
jc --iptables
로 출력을 파이핑하는 데 도움이 되는 경우 ip6tables 옵트인 열 정렬 -
더 안정적인 출력을 위해
--numeric
로 숫자 프로토콜 번호를 인쇄 -
*tables-translate
유틸리티에 대한 더 많은 번역이 개선된 출력 포맷 - 몇 가지 수동 페이지 개선 사항
주요 수정 사항:
-
COMMIT 행을 잘못 가리키는
iptables-restore
오류 메시지 -
broken
-p Length
match in ebtables -
ebtables-restore
를 통해 복원된 여러 규칙에 사용될 때 일치 항목 간에 중단됨 - 이미 존재하는 체인 수에 따라 체인의 이름을 변경할 때 프로그램이 충돌 할 수 있습니다.
- 중요하지 않은 메모리 누수
- nft-variants로 전환 후 ebtables에서 누락된 broute 테이블 지원
- '-c' 옵션을 사용하여 ip6tables 규칙 카운터 설정
- 존재하지 않는 체인을 나열할 때 예기치 않은 오류 메시지
- 일치 항목이 사용되는 경우 잠재적인 false-positive ebtables 규칙 비교
- 체인의 이름을 잘못된 이름으로 변경 금지
- iptables-restore 입력에서 "chain lines"을 보다 엄격하게 확인하여 잘못된 체인 이름을 감지합니다.
- 작동하지 않는 기본 제공 체인 정책 카운터
nftables
가 버전 1.0.9로 재기반
nftables
유틸리티가 버전 1.0.9로 업그레이드되어 여러 버그 수정 및 개선 사항을 제공합니다. 주요 변경 사항은 다음과 같습니다.
-
--optimize
명령 옵션 개선 - Python nftables 클래스 확장
-
iptables-nft
로 생성된 규칙을 처리할 때 동작 개선 - vxlan-encapsulated 헤더의 필드 액세스 지원
- GRE, Geneve 및 GRETAP 프로토콜에 대한 초기 지원
-
규칙 카운터, 할당량을 재설정하
는 새로운 재설정 규칙 -
새로운
destroy
명령은 해당 항목이 있는 경우에만 삭제 -
마지막으로
패킷을 볼 때 새로운 마지막 명령 기록 - netdev-family 체인에서 장치 추가 및 제거
-
ebtables의
broute 기능을 에뮬레이션하는 새로운 메타
broute 표현식 - 잘못된 메모리 누수 수정
- 코너 케이스의 오류 메시지에서 잘못된 위치 수정
- JSON 출력에서 set 및 map 구문이 누락됨
firewalld
버전 1.3으로 업데이트
firewalld
패키지가 버전 1.3으로 업그레이드되어 여러 버그 수정 및 개선 사항을 제공합니다. 주요 변경 사항은 다음과 같습니다.
-
새로운
reset-to-defaults
CLI 옵션: 이 옵션은firewalld
서비스의 구성을 기본값으로 재설정합니다. 이를 통해 사용자는firewalld
구성을 지우고 기본 설정으로 다시 시작할 수 있습니다. -
ingress-zone=ZONE
을 사용하는 정책에 대해--add-masquerade
CLI 옵션을 활성화합니다. 여기서ZONE
에는--add-interface
CLI 옵션과 함께 인터페이스가 할당되어 있습니다. 이렇게 하면 제한이 제거되고 공통 시나리오에서 인터페이스(소스 대신)를 사용할 수 있습니다.
이러한 기능을 도입해야 하는 이유:
-
방화벽을 기본 구성으로 재설정하기 위해
reset-to-defaults
가 구현되었습니다. - 인터페이스를 사용하면 방화벽 구성에 영향을 주지 않고 IP 주소를 변경할 수 있습니다.
결과적으로 사용자는 다음 작업을 수행할 수 있습니다.
- 구성 재설정
-
정책을 사용하는 동안
--add-maquerade
와--add-interface
와 결합