SYSTEMD.LINK(5) systemd.link SYSTEMD.LINK(5) systemd.link - link.link ini systemd-udevd(8) net_setup_link . systemd.syntax(7) . .link ( .link initramfs). . . .link /usr/lib/systemd/network /usr/local/lib/systemd/network [1] /run/systemd/network /etc/systemd/network. . . "70" ( 10-eth0.link). .link systemd-network-generator.service(8) . /etc/ /run/ /usr/lib/. . ( 0) /dev/null ( ""). foo.link "" foo.link.d/. ".conf" . . . /etc/systemd/network "" ".d" /usr/lib/systemd/network /run/systemd/network. /etc/ /run/ /usr/lib/. . [Match] [Link] . ( ) . 99-default.link. .link . udevadm(8) .link. [MATCH] [Match] . [Match] systemd-udevd . : : OriginalName=* ( ) . : MACAddress= . : colon-delimited hexadecimal . : "12:34:56:78:90:ab" "AA:BB:CC:DD:EE:FF". 250. . : "12-34-56-78-90-ab" "AA-BB-CC-DD-EE-FF". 250. dot-delimited hexadecimal . : "1234.5678.90ab" "AABB.CCDD.EEFF". 250. IPv4 . "127.0.0.1" "192.168.0.1". 250. IPv6 . "2001:0db8:85a3::8a2e:0370:7334" "::1". 250. MAC 4 ( IPv4) 6 () 16 ( IPv6) 20 ( ). . . . 211. PermanentMACAddress= . MACAddress= MAC MAC . IPv4 IPv6. . . . 245. Path= (globs) udev ID_PATH. 211. Driver= (globs) udev ID_NET_DRIVER ethtool -i . "!" . 211. Type= (globs) networkctl list. "!" . "ether" "loopback" "wlan" "wwan". "DEVTYPE" udev "ARPHRD_" linux/if_arp.h . 211. Kind= (globs) networkctl status INTERFACE ip -d link show INTERFACE. "!" . "bond" "bridge" "gre" "tun" "veth". "IFLA_INFO_KIND" netlink . 251. Property= udev ("="). AND . "!" . . "\". : .link : Property=ID_MODEL_ID=9999 "ID_VENDOR_FROM_DATABASE=vendor name" "KEY=with \"quotation\"" .link . 243. OriginalName= glob udev "INTERFACE". . . 218. Host= . ConditionHost= systemd.unit(5) . ("!") . . 211. Virtualization= . ConditionVirtualization= systemd.unit(5) . ("!") . . 211. KernelCommandLine= . ConditionKernelCommandLine= systemd.unit(5) . ("!") . . 211. KernelVersion= ( uname -r) . ConditionKernelVersion= systemd.unit(5) . ("!") . . 237. Version= . ConditionVersion= systemd.unit(5) . ("!") . . 258. Credential= systemd-udevd.service. [2] . ("!") . . 252. Architecture= . ConditionArchitecture= systemd.unit(5) . ("!") . . 211. Firmware= (firmware) . ConditionFirmware= systemd.unit(5) . ("!") . . 249. [LINK] [Link] : Description= . 211. Property= udev . - ("="). : Property=HOGE=foo BAR=baz . . . "ID_NET_MANAGED_BY=" systemd-networkd(8) . Property=ID_NET_MANAGED_BY=io.systemd.Network systemd-networkd . systemd.network(5) . 256. ImportProperty= udev . . : ImportProperty=HOGE BAR . . . Property= Property=. 256. UnsetProperty= udev . . : UnsetProperty=HOGE BAR . . . ImportProperty= Property=. ImportProperty= Property= . 256. Alias= ifalias . 211. MACAddressPolicy= MAC . : persistent MAC . MAC . ID_NET_NAME_* . MAC . 211. random MAC . . " " (unicast) " " (locally administered) . 211. none MAC . MAC MACAddress=. 227. "none". 211. MACAddress= MAC . MACAddressPolicy= "none". 211. NamePolicy= . NamePolicy= net.ifnames=0 . . udev ID_NET_NAME udev(7) NAME. : kernel . 216. database udev ID_NET_NAME_FROM_DATABASE. 211. onboard (firmware) udev ID_NET_NAME_ONBOARD. systemd.net-naming-scheme(7). 211. slot (firmware) (hot-plug) udev ID_NET_NAME_SLOT. systemd.net-naming-scheme(7). 211. udev ID_NET_NAME_PATH. systemd.net-naming-scheme(7). 211. mac MAC udev ID_NET_NAME_MAC. systemd.net-naming-scheme(7). 211. keep ( ) . 241. 211. Name= . NamePolicy= NamePolicy= . "Name=dmz0". ( "eth0") udev . udev . "internal0"/"external0" "lan0"/"lan1"/"lan3". 1 15 ASCII 7 ":" "/" "%". "." ( resolvconf(1)) . ( ) "." ".." "all" "default" . 211. AlternativeNamesPolicy= . . "database" "onboard" "slot" "path" "mac". . 245. AlternativeName= . . . . . ( Name= ) . 127 15 . 245. TransmitQueues= . 1...4096. . 248. ReceiveQueues= . 1...4096. . 248. TransmitQueueLength= . 0...4294967294. . 248. MTUBytes= . K M G 1024. 211. BitsPerSecond= . K M G 1000. 211. Duplex= . half full. 211. AutoNegotiation= . yes . . . . . 233. WakeOnLan= (Wake-on-LAN) . "off" : phy (PHY). 211. unicast (unicast). 235. multicast (multicast). 235. broadcast (broadcast). 235. arp (ARP). 235. magic (magic packet). 211. secureon SecureOn (MagicPacket). WakeOnLanPassword=. WakeOnLanPassword= "LINK.link.wol.password" ( "60-foo.link.wol.password") "wol.password". ImportCredential=/LoadCredential=/SetCredential= systemd.exec(5) . 6 (":") MAC : "aa:bb:cc:dd:ee:ff". 235. . . . 211. WakeOnLanPassword= SecureOn (MagicPacket). AF_UNIX . . AF_UNIX . 6 (":") MAC : "aa:bb:cc:dd:ee:ff". WakeOnLan=secureon. . 250. Port= . : tp . 234. aui (AUI). . 234. bnc BNC . 234. mii (MII). 234. fibre . 234. 234. Advertise= . "AutoNegotiation=yes". : 1. +---------------------------+--------------------------------------+--------------------------+ | | | | | | (/) | | +---------------------------+--------------------------------------+--------------------------+ |10baset-full | 10 | full | +---------------------------+--------------------------------------+--------------------------+ |10baset1brr-full | 10 | full | +---------------------------+--------------------------------------+--------------------------+ |10baset1l-full | 10 | full | +---------------------------+--------------------------------------+--------------------------+ |10baset1s-full | 10 | full | +---------------------------+--------------------------------------+--------------------------+ |10baset-half | 10 | half | +---------------------------+--------------------------------------+--------------------------+ |10baset1s-half | 10 | half | +---------------------------+--------------------------------------+--------------------------+ |10baset1s-p2mp-half | 10 | half | +---------------------------+--------------------------------------+--------------------------+ |100basefx-full | 100 | full | +---------------------------+--------------------------------------+--------------------------+ |100baset-full | 100 | full | +---------------------------+--------------------------------------+--------------------------+ |100baset1-full | 100 | full | +---------------------------+--------------------------------------+--------------------------+ |100basefx-half | 100 | half | +---------------------------+--------------------------------------+--------------------------+ |100baset-half | 100 | half | +---------------------------+--------------------------------------+--------------------------+ |1000basekx-full | 1000 | full | +---------------------------+--------------------------------------+--------------------------+ |1000baset-full | 1000 | full | +---------------------------+--------------------------------------+--------------------------+ |1000baset1-full | 1000 | full | +---------------------------+--------------------------------------+--------------------------+ |1000basex-full | 1000 | full | +---------------------------+--------------------------------------+--------------------------+ |1000baset-half | 1000 | half | +---------------------------+--------------------------------------+--------------------------+ |2500baset-full | 2500 | full | +---------------------------+--------------------------------------+--------------------------+ |2500basex-full | 2500 | full | +---------------------------+--------------------------------------+--------------------------+ |5000baset-full | 5000 | full | +---------------------------+--------------------------------------+--------------------------+ |10000baser-fec | 10000 | | +---------------------------+--------------------------------------+--------------------------+ |10000basecr-full | 10000 | full | +---------------------------+--------------------------------------+--------------------------+ |10000baseer-full | 10000 | full | +---------------------------+--------------------------------------+--------------------------+ |10000basekr-full | 10000 | full | +---------------------------+--------------------------------------+--------------------------+ |10000basekx4-full | 10000 | full | +---------------------------+--------------------------------------+--------------------------+ |10000baselr-full | 10000 | full | +---------------------------+--------------------------------------+--------------------------+ |10000baselrm-full | 10000 | full | +---------------------------+--------------------------------------+--------------------------+ |10000basesr-full | 10000 | full | +---------------------------+--------------------------------------+--------------------------+ |10000baset-full | 10000 | full | +---------------------------+--------------------------------------+--------------------------+ |20000basekr2-full | 20000 | full | +---------------------------+--------------------------------------+--------------------------+ |20000basemld2-full | 20000 | full | +---------------------------+--------------------------------------+--------------------------+ |25000basecr-full | 25000 | full | +---------------------------+--------------------------------------+--------------------------+ |25000basekr-full | 25000 | full | +---------------------------+--------------------------------------+--------------------------+ |25000basesr-full | 25000 | full | +---------------------------+--------------------------------------+--------------------------+ |40000basecr4-full | 40000 | full | +---------------------------+--------------------------------------+--------------------------+ |40000basekr4-full | 40000 | full | +---------------------------+--------------------------------------+--------------------------+ |40000baselr4-full | 40000 | full | +---------------------------+--------------------------------------+--------------------------+ |40000basesr4-full | 40000 | full | +---------------------------+--------------------------------------+--------------------------+ |50000basecr-full | 50000 | full | +---------------------------+--------------------------------------+--------------------------+ |50000basecr2-full | 50000 | full | +---------------------------+--------------------------------------+--------------------------+ |50000basedr-full | 50000 | full | +---------------------------+--------------------------------------+--------------------------+ |50000basekr-full | 50000 | full | +---------------------------+--------------------------------------+--------------------------+ |50000basekr2-full | 50000 | full | +---------------------------+--------------------------------------+--------------------------+ |50000baselr-er-fr-full | 50000 | full | +---------------------------+--------------------------------------+--------------------------+ |50000basesr-full | 50000 | full | +---------------------------+--------------------------------------+--------------------------+ |50000basesr2-full | 50000 | full | +---------------------------+--------------------------------------+--------------------------+ |56000basecr4-full | 56000 | full | +---------------------------+--------------------------------------+--------------------------+ |56000basekr4-full | 56000 | full | +---------------------------+--------------------------------------+--------------------------+ |56000baselr4-full | 56000 | full | +---------------------------+--------------------------------------+--------------------------+ |56000basesr4-full | 56000 | full | +---------------------------+--------------------------------------+--------------------------+ |100000basecr-full | 100000 | full | +---------------------------+--------------------------------------+--------------------------+ |100000basecr2-full | 100000 | full | +---------------------------+--------------------------------------+--------------------------+ |100000basecr4-full | 100000 | full | +---------------------------+--------------------------------------+--------------------------+ |100000basedr-full | 100000 | full | +---------------------------+--------------------------------------+--------------------------+ |100000basedr2-full | 100000 | full | +---------------------------+--------------------------------------+--------------------------+ |100000basekr-full | 100000 | full | +---------------------------+--------------------------------------+--------------------------+ |100000basekr2-full | 100000 | full | +---------------------------+--------------------------------------+--------------------------+ |100000basekr4-full | 100000 | full | +---------------------------+--------------------------------------+--------------------------+ |100000baselr-er-fr-full | 100000 | full | +---------------------------+--------------------------------------+--------------------------+ |100000baselr2-er2-fr2-full | 100000 | full | +---------------------------+--------------------------------------+--------------------------+ |100000baselr4-er4-full | 100000 | full | +---------------------------+--------------------------------------+--------------------------+ |100000basesr-full | 100000 | full | +---------------------------+--------------------------------------+--------------------------+ |100000basesr2-full | 100000 | full | +---------------------------+--------------------------------------+--------------------------+ |100000basesr4-full | 100000 | full | +---------------------------+--------------------------------------+--------------------------+ |200000basecr-full | 200000 | full | +---------------------------+--------------------------------------+--------------------------+ |200000basecr2-full | 200000 | full | +---------------------------+--------------------------------------+--------------------------+ |200000basecr4-full | 200000 | full | +---------------------------+--------------------------------------+--------------------------+ |200000basedr-2-full | 200000 | full | +---------------------------+--------------------------------------+--------------------------+ |200000basedr-full | 200000 | full | +---------------------------+--------------------------------------+--------------------------+ |200000basedr2-full | 200000 | full | +---------------------------+--------------------------------------+--------------------------+ |200000basedr4-full | 200000 | full | +---------------------------+--------------------------------------+--------------------------+ |200000basekr-full | 200000 | full | +---------------------------+--------------------------------------+--------------------------+ |200000basekr2-full | 200000 | full | +---------------------------+--------------------------------------+--------------------------+ |200000basekr4-full | 200000 | full | +---------------------------+--------------------------------------+--------------------------+ |200000baselr2-er2-fr2-full | 200000 | full | +---------------------------+--------------------------------------+--------------------------+ |200000baselr4-er4-fr4-full | 200000 | full | +---------------------------+--------------------------------------+--------------------------+ |200000basesr-full | 200000 | full | +---------------------------+--------------------------------------+--------------------------+ |200000basesr2-full | 200000 | full | +---------------------------+--------------------------------------+--------------------------+ |200000basesr4-full | 200000 | full | +---------------------------+--------------------------------------+--------------------------+ |200000basevr-full | 200000 | full | +---------------------------+--------------------------------------+--------------------------+ |400000basecr2-full | 400000 | full | +---------------------------+--------------------------------------+--------------------------+ |400000basecr4-full | 400000 | full | +---------------------------+--------------------------------------+--------------------------+ |400000basecr8-full | 400000 | full | +---------------------------+--------------------------------------+--------------------------+ |400000basedr2-2-full | 400000 | full | +---------------------------+--------------------------------------+--------------------------+ |400000basedr2-full | 400000 | full | +---------------------------+--------------------------------------+--------------------------+ |400000basedr4-full | 400000 | full | +---------------------------+--------------------------------------+--------------------------+ |400000basedr8-full | 400000 | full | +---------------------------+--------------------------------------+--------------------------+ |400000basekr2-full | 400000 | full | +---------------------------+--------------------------------------+--------------------------+ |400000basekr4-full | 400000 | full | +---------------------------+--------------------------------------+--------------------------+ |400000basekr8-full | 400000 | full | +---------------------------+--------------------------------------+--------------------------+ |400000baselr4-er4-fr4-full | 400000 | full | +---------------------------+--------------------------------------+--------------------------+ |400000baselr8-er8-fr8-full | 400000 | full | +---------------------------+--------------------------------------+--------------------------+ |400000basesr2-full | 400000 | full | +---------------------------+--------------------------------------+--------------------------+ |400000basesr4-full | 400000 | full | +---------------------------+--------------------------------------+--------------------------+ |400000basesr8-full | 400000 | full | +---------------------------+--------------------------------------+--------------------------+ |400000basevr2-full | 400000 | full | +---------------------------+--------------------------------------+--------------------------+ |800000basecr4-full | 800000 | full | +---------------------------+--------------------------------------+--------------------------+ |800000basecr8-full | 800000 | full | +---------------------------+--------------------------------------+--------------------------+ |800000basedr4-2-full | 800000 | full | +---------------------------+--------------------------------------+--------------------------+ |800000basedr4-full | 800000 | full | +---------------------------+--------------------------------------+--------------------------+ |800000basedr8-2-full | 800000 | full | +---------------------------+--------------------------------------+--------------------------+ |800000basedr8-full | 800000 | full | +---------------------------+--------------------------------------+--------------------------+ |800000basekr4-full | 800000 | full | +---------------------------+--------------------------------------+--------------------------+ |800000basekr8-full | 800000 | full | +---------------------------+--------------------------------------+--------------------------+ |800000basesr4-full | 800000 | full | +---------------------------+--------------------------------------+--------------------------+ |800000basesr8-full | 800000 | full | +---------------------------+--------------------------------------+--------------------------+ |800000basevr4-full | 800000 | full | +---------------------------+--------------------------------------+--------------------------+ |800000basevr8-full | 800000 | full | +---------------------------+--------------------------------------+--------------------------+ |1600000basecr8-full | 1600000 | full | +---------------------------+--------------------------------------+--------------------------+ |1600000basedr8-2-full | 1600000 | full | +---------------------------+--------------------------------------+--------------------------+ |1600000basedr8-full | 1600000 | full | +---------------------------+--------------------------------------+--------------------------+ |1600000basekr8-full | 1600000 | full | +---------------------------+--------------------------------------+--------------------------+ |asym-pause | | | +---------------------------+--------------------------------------+--------------------------+ |aui | | | +---------------------------+--------------------------------------+--------------------------+ |autonegotiation | | | +---------------------------+--------------------------------------+--------------------------+ |backplane | | | +---------------------------+--------------------------------------+--------------------------+ |bnc | | | +---------------------------+--------------------------------------+--------------------------+ |fec-baser | | | +---------------------------+--------------------------------------+--------------------------+ |fec-llrs | | | +---------------------------+--------------------------------------+--------------------------+ |fec-none | | | +---------------------------+--------------------------------------+--------------------------+ |fec-rs | | | +---------------------------+--------------------------------------+--------------------------+ |fibre | | | +---------------------------+--------------------------------------+--------------------------+ |mii | | | +---------------------------+--------------------------------------+--------------------------+ |pause | | | +---------------------------+--------------------------------------+--------------------------+ |tp | | | +---------------------------+--------------------------------------+--------------------------+ . . . 240. ReceiveChecksumOffload= . true (hardware offload) (checksumming) . . 245. TransmitChecksumOffload= . true . . 245. ScatterGather= . true . . ethtool -K INTERFACE tx-scatter-gather on|off. 260. ScatterGatherFragmentList= . true . . ethtool -K INTERFACE tx-scatter-gather-fraglist on|off. 260. TCPSegmentationOffload= . true TCP (TSO). . 232. TCPECNSegmentationOffload= . true TCP ECN ( ) TCP. . ethtool -K INTERFACE tx-tcp-ecn-segmentation on|off. 260. TCPMangleIdSegmentationOffload= . true TCP IPv4 (ID) . . ethtool -K INTERFACE tx-tcp-mangleid-segmentation on|off. 260. TCP6SegmentationOffload= . true TCP6 (tx-tcp6-segmentation). . 235. GenericSegmentationOffload= . true (GSO). . 232. PartialGenericSegmentationOffload= . true (GSO_Partial). Partial Generic Segmentation Offload[3] . . 258. GenericReceiveOffload= . true (GRO). . 232. GenericReceiveOffloadHardware= . true (GRO) . . 250. GenericReceiveOffloadList= . true (GRO) UDP. . ethtool -K INTERFACE rx-gro-list on|off. 260. GenericReceiveOffloadUDPForwarding= . true (GRO) UDP . . ethtool -K INTERFACE rx-udp-gro-forwarding on|off. 260. LargeReceiveOffload= . true (LRO). . 232. ReceivePacketSteeringCPUMask= RPS ( - RPS). . "all" . (: "2-6"). . . RPS . RPS "disable". 256. ReceiveVLANCTAGHardwareAcceleration= . true VLAN CTAG . . 250. TransmitVLANCTAGHardwareAcceleration= . true VLAN CTAG . . 250. ReceiveVLANCTAGFilter= . true VLAN CTAGs. . 250. TransmitVLANSTAGHardwareAcceleration= . true VLAN STAG . . 250. NTupleFilter= . true N-tuple . . 250. ReceiveFCS= . true (FCS) . . 258. ReceiveAll= . true . . 258. RxChannels=, TxChannels=, OtherChannels=, CombinedChannels= . 1...4294967295 "max". "max" . . . 239. RxBufferSize=, RxMiniBufferSize=, RxJumboBufferSize=, TxBufferSize= (NIC) . 1...4294967295 "max". "max" . . . 244. RxFlowControl= . (PAUSE) ( ). . 246. TxFlowControl= . (PAUSE) ( ). . 246. AutoNegotiationFlowControl= . . . 246. GenericSegmentOffloadMaxBytes= (GSO) . K M G 1024. 1...65536. . 248. GenericSegmentOffloadMaxSegments= (GSO) . 1...65535. . 248. UseAdaptiveRxCoalesce=, UseAdaptiveTxCoalesce= / Rx/Tx . . 250. RxCoalesceSec=, RxCoalesceIrqSec=, RxCoalesceLowSec=, RxCoalesceHighSec=, TxCoalesceSec=, TxCoalesceIrqSec=, TxCoalesceLowSec=, TxCoalesceHighSec= Rx/Tx / . "Irq" (IRQ). "Low" "High" Rx/Tx . . 250. RxMaxCoalescedFrames=, RxMaxCoalescedIrqFrames=, RxMaxCoalescedLowFrames=, RxMaxCoalescedHighFrames=, TxMaxCoalescedFrames=, TxMaxCoalescedIrqFrames=, TxMaxCoalescedLowFrames=, TxMaxCoalescedHighFrames= / Rx/Tx. "Irq" (IRQ). "Low" "High" Rx/Tx . . 250. CoalescePacketRateLow=, CoalescePacketRateHigh= ( ) Rx/Tx . . 250. CoalescePacketRateSampleIntervalSec= Rx/Tx . . . . . 250. StatisticsBlockCoalesceSec= (driver). . . . 250. MDI= (MDI) . MDI . : "straight" ( : "mdi") "crossover" ( : "mdi-x" "mdix") "auto". "straight" MDI . "crossover" MDI (MDI-X). "auto" MDI . . 251. SR-IOVVirtualFunctions= SR-IOV. 0...2147483647. VirtualFunction= [SR-IOV]. 251. [SR-IOV] SR-IOV PCI PCI (VM). (VFs) SR-IOV (north-south) ( ) . [SR-IOV] .link . .network . [SR-IOV] SR-IOVs. [SR-IOV] . VirtualFunction= (VF) PCIe . 0 2147483646. . 251. VLANId= VLAN . 1 4095. 251. QualityOfService= (QoS) . 1 4294967294. 251. VLANProtocol= VLAN . "802.1Q" "802.1ad". 251. MACSpoofCheck= . MAC. . 251. QueryReceiveSideScaling= . (RSS) (VF). RSS VF RSS VF (PF). . 251. Trust= . (VF). VF / . . 251. LinkState= (VF). "auto". "auto" (PF) "yes" VF PF "no" VF. (kernel). 251. MACAddress= MAC . 251. [ENERGYEFFICIENTETHERNET] [EnergyEfficientEthernet] (EEE) . Enable= . true (EEE) . EEE. 258. TxLowPowerIdle= . true (Tx-LPI) . . 258. TxLowPowerIdleSec= . . . . . 258. LinkMode= : "1000baset-full". Advertise= [Link] . . . 258. . . : 2. +-------------------+-----------------------------+--------------------------------+ | | | | +-------------------+-----------------------------+--------------------------------+ |"%a" | | | | | | | | | | | | | | | | | | . | | | | x86 | | | | x86-64 arm64. | | | | | | | | | | | | | | | | ConditionArchitecture= | | | | systemd.unit(5) | | | | | | | | | | | | . | +-------------------+-----------------------------+--------------------------------+ |"%A" | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | IMAGE_VERSION= | | | | /etc/os-release. | | | | | | | | | | | | | | | | . | | | | os-release(5) | | | | | | | | . | +-------------------+-----------------------------+--------------------------------+ |"%b" | | | | | | | | | | | | | | | | | | | | | | | | | | . | | | | random(4) | | | | | | | | . | +-------------------+-----------------------------+--------------------------------+ |"%B" | | | | | | | | | | | | | | | | | | | | | | | | | | BUILD_ID= | | | | /etc/os-release. | | | | | | | | | | | | | | | | | | | | . | | | | os-release(5) | | | | | | | | . | +-------------------+-----------------------------+--------------------------------+ |"%H" | | | | | | | | | | . | +-------------------+-----------------------------+--------------------------------+ |"%l" | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | . | +-------------------+-----------------------------+--------------------------------+ |"%m" | | | | | | | | | | | | | | | | | | | | | | | | | | . | | | | machine-id(5) | | | | | | | | . | +-------------------+-----------------------------+--------------------------------+ |"%M" | | | | | | | | | | | | | | | | | | | | | | | | | | IMAGE_ID= | | | | /etc/os-release. | | | | | | | | | | | | | | | | | | | | . | | | | os-release(5) | | | | | | | | . | +-------------------+-----------------------------+--------------------------------+ |"%o" | | | | | | | | | | | | | | | | | | | | | | ID= | | | | /etc/os-release. | | | | os-release(5) | | | | | | | | . | +-------------------+-----------------------------+--------------------------------+ |"%q" | | | | | | | | | | | | | | | | | | | | | | | | | | PRETTY_HOSTNAME= | | | | /etc/machine-info. | | | | | | | | | | | | | | | | . | | | | machine-info(5) | | | | | | | | . | +-------------------+-----------------------------+--------------------------------+ |"%T" | | /tmp | | | | | | | | | | | | "$TMPDIR" | | | | "$TEMP" "$TMP". | | | | ( | | | | | | | | | | | | | | | | .) | +-------------------+-----------------------------+--------------------------------+ |"%v" | | | | | | uname | | | | -r. | +-------------------+-----------------------------+--------------------------------+ |"%V" | | /var/tmp | | | | | | | | | | | | "$TMPDIR" | | | | "$TEMP" "$TMP". | | | | ( | | | | | | | | | | | | | | | | .) | +-------------------+-----------------------------+--------------------------------+ |"%w" | | | | | | | | | | | | | | | | | | | | | | | | | | VERSION_ID= | | | | /etc/os-release. | | | | | | | | | | | | | | | | | | | | . | | | | os-release(5) | | | | | | | | . | +-------------------+-----------------------------+--------------------------------+ |"%W" | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | VARIANT_ID= | | | | /etc/os-release. | | | | | | | | | | | | | | | | | | | | . | | | | os-release(5) | | | | | | | | . | +-------------------+-----------------------------+--------------------------------+ 1. /usr/lib/systemd/network/99-default.link 99-default.link systemd MAC . [Match] OriginalName=* [Link] NamePolicy=keep kernel database onboard slot path AlternativeNamesPolicy=database onboard slot path MACAddressPolicy=persistent 2. /etc/systemd/network/10-dmz.link "dmz0" MAC 00:a0:de:63:7a:e6: [Match] MACAddress=00:a0:de:63:7a:e6 [Link] Name=dmz0 NamePolicy= Name=. "10-" . 99-default.link . 3. () .link .link .link : $ sudo udevadm control --reload $ sudo ip link set eth0 down $ sudo udevadm trigger --verbose --settle --action add /sys/class/net/eth0 : systemd-networkd.service(8) NetworkManager.service . udevadm udevadm(8). 4. NamePolicy= $ sudo SYSTEMD_LOG_LEVEL=debug udevadm test-builtin net_setup_link /sys/class/net/hub0 ... /usr/lib/systemd/network/99-default.link /etc/systemd/network/10-eth0.link ID_NET_DRIVER=cdc_ether /etc/systemd/network/10-eth0.link hub0 link_config: . hub0: name_assign_type=4 'v240'. hub0: Name=hub0. ID_NET_LINK_FILE=/etc/systemd/network/10-eth0.link ID_NET_NAME=hub0 ... Name= . sudo SYSTEMD_LOG_LEVEL=debug udevadm test-builtin net_setup_link /sys/class/net/enp0s31f6 ... /usr/lib/systemd/network/99-default.link /etc/systemd/network/10-eth0.link . ID_NET_DRIVER=e1000e /usr/lib/systemd/network/99-default.link enp0s31f6 link_config: . enp0s31f6: name_assign_type=4 'v240'. enp0s31f6: *keep*: enp0s31f6: addr_assign_type=0 enp0s31f6: MAC *persistent* ID_NET_LINK_FILE=/usr/lib/systemd/network/99-default.link ... keep 99-default.link . keep : enp0s31f6: Policy *path* yields "enp0s31f6". enp0s31f6: Device has addr_assign_type=0 enp0s31f6: MAC on the device already matches policy *persistent* ID_NET_LINK_FILE=/usr/lib/systemd/network/99-default.link ID_NET_NAME=enp0s31f6 ... . 5. /etc/systemd/network/10-internet.link "internet0" "pci-0000:00:1a.0-*": [Match] Path=pci-0000:00:1a.0-* [Link] Name=internet0 6. /etc/systemd/network/25-wireless.link [Match] [Link]. [Match] MACAddress=12:34:56:78:9a:bc Driver=brcmsmac Path=pci-0000:02:00.0-* Type=wlan Virtualization=no Host=my-laptop Architecture=x86-64 [Link] Name=wireless0 MTUBytes=1450 BitsPerSecond=10M WakeOnLan=magic MACAddress=cb:a9:87:65:43:21 systemd-udevd.service(8), udevadm(8), systemd.netdev(5), systemd.network(5), systemd-network-generator.service(8) 1. . /usr/local/ . 2. https://systemd.io/CREDENTIALS 3. https://docs.kernel.org/networking/segmentation-offloads.html#partial-generic-segmentation-offload 3 . . : . systemd 260.2 SYSTEMD.LINK(5)