"gateway4는 더 이상 사용되지 않습니다"라는 경고에 대한 여러 게시물을 보았습니다 sudo netplan apply
. 문제는 약간 다릅니다. .yaml 구성 파일에 "gateway4" 줄이 없는데도 해당 경고가 표시됩니다. .
헤드리스 서버에서 Ubuntu 22.04.1을 실행합니다.
.yaml 파일은 다음과 같습니다.
network:
version: 2
renderer: networkd
ethernets:
enp0s31f6:
addresses:
- [ipv4 address]/32
- [ipv6 address]/64
routes:
- to: default
via: [gateway ipv4 address here]
metric: 100
on-link: true
- to: ::/0
via: fe80::1
nameservers:
addresses:
- 1.1.1.1
- 2606:4700:4700::1111
- 1.0.0.1
- 2606:4700:4700::1001
Gateway4가 더 이상 사용되지 않는다는 경고가 표시되는 이유는 무엇입니까?
답변1
질문:
사람들과 교류하면서네트워크 계획CLI 출력에서는 더 이상 사용되지 않는 "gateway4" 문, 라우팅 충돌 또는 "라우팅 정책" 구성을 촉구하는 메시지에 대해 불평할 수 있습니다. 메시지 예:
** (generate:13032): WARNING **: 14:00:00.100: 'gateway4' has been deprecated, use default routes instead. See the 'Default routes' section of the documentation for more details.
.
** (process:4389): WARNING **: 14:00:00.200: gateway4 has been deprecated, use default routes instead. **
.
** (process:13030): WARNING **: 14:00:00.300: Problem encountered while validating default route consistency. Please set up multiple routing tables and use `routing-policy` instead.
Error: Conflicting default route declarations for IPv4 (table: main, metric: default), first declared in eno1 but also in eno1
고정시키다: netplan이 예상대로 작동하도록 만듭니다.둘속도.
첫 번째, 트래버스 /etc/netplan/00-installer-config.yaml
(또는 유사), 아직 변경되지 않은 경우 주소 필드의 구문을 두 줄 형식에서 한 줄 형식으로 변경합니다. 다음과 같습니다.
주소 필드;두 줄체재
[...]
addresses:
- i.p.v.4/24
[...]
주소 필드;하나의 선형식 - 이것으로 변경
[...]
addresses: [ "i.p.v.4/24" ]
[...]
더 일찍 /etc/netplan/00-installer-config.yaml
"주소" 필드 두 줄
network:
version: 2
renderer: networkd
ethernets:
eno1:
addresses:
- i.p.v.4/24
nameservers:
search: [sub.domain.tld, domain.tld]
addresses: [d.n.s.a, d.n.s.b, d.n.s.c]
routes:
- to: 0.0.0.0/0
via: i.p.v.4
on-link: true
고쳐 쓰다 /etc/netplan/00-installer-config.yaml
한 줄짜리 "주소" 필드
network:
version: 2
renderer: networkd
ethernets:
eno1:
addresses: [ "i.p.v.4/24" ]
nameservers:
search: [sub.domain.tld, domain.tld]
addresses: [d.n.s.a, d.n.s.b, d.n.s.c]
routes:
- to: 0.0.0.0/0
via: i.p.v.4
on-link: true
다음, 트래버스 /run/netplan/eno1.yaml
(또는 이와 유사한), 위에서 언급한 대로 주소 필드의 형식을 두 줄에서 한 줄로 변경해야 합니다. 게다가, 인스턴스를 찾을 수도 있습니다'게이트웨이 4'이 위치에서. 반드시 삭제하거나 댓글을 달아주세요.
더 일찍 /run/netplan/eno1.yaml
"주소" 필드 2줄 + 게이트웨이 4
network:
version: 2
ethernets:
eno1:
addresses:
- i.p.v.4/24
gateway4: "i.p.v.4"
고쳐 쓰다 /run/netplan/eno1.yaml
한 줄의 "주소" 필드 + 게이트웨이 없음 4
network:
version: 2
ethernets:
eno1:
addresses: [ "i.p.v.4/24" ]
이제 다음을 발행하십시오:sudo 네트워크 프로그램 응용 프로그램그리고 오류가 있어서는 안 됩니다.
/run/systemd/network/10-netplan-eno1.network
실행 중인 구성( 또는 유사) 을 보면 작업을 확인할 수 있습니다 .
[Match]
Name=eno1
[Network]
LinkLocalAddressing=ipv6
Address=i.p.v.4/24
DNS=d.n.s.a
DNS=d.n.s.b
DNS=d.n.s.c
Domains=sub.domain.tld domain.tld
[Route]
Destination=0.0.0.0/0
Gateway=i.p.v.4
GatewayOnLink=true