Yu Watanabe
4bb7cc8287
network, udev: introduce PermanentMACAddress= setting in [Match] section
...
Closes #13983 .
2020-01-08 17:54:54 +09:00
Lennart Poettering
dc5737470e
Merge pull request #14194 from yuwata/network-multipath-routing-12541
...
network: introduce multipath routing
2020-01-03 15:38:03 +01:00
Yu Watanabe
40681e5cdc
network: add one more log message
2019-12-23 21:34:31 +01:00
Yu Watanabe
6ff5cc6b7a
network: introduce multipath route
...
Closes #12541 .
2019-12-18 22:12:57 +09:00
Yu Watanabe
572b21d96c
network: make Name= in [Match] support alternative names of interfaces
2019-12-16 10:55:56 +09:00
Yu Watanabe
2e048b14eb
Merge pull request #13915 from ddstreet/ipv6_mtu
...
Set ipv6 mtu after link-up or device mtu change
2019-12-13 18:33:04 +09:00
Susant Sahani
051e77cac1
network: introduce DAD for static address
...
Closes #2527 .
2019-12-06 23:29:07 +09:00
Yu Watanabe
2c7b826ddf
network: do not drop foreign config if interface is in initialized state
...
If the interface is in initialized state, no network file is assigned to
the interface. If an interface is not managed by networkd, previously,
the foreign configs of the interface was dropped.
Fixes #14250 .
2019-12-06 12:27:47 +01:00
Dan Streetman
d236718c16
network: set ipv6 mtu after link-up or device mtu change
...
The kernel resets the ipv6 mtu after NETDEV_UP or NETDEV_CHANGEMTU event,
so we must reset the ipv6 mtu to our configured value after we detect
IFF_UP flag set or after we set the device mtu.
Fixes : #13914 .
2019-12-05 17:49:47 -05:00
Yu Watanabe
ec34e7d1ab
Merge pull request #14229 from yuwata/nspawn-network-interface-14223
...
nspawn: do not fail if udev is not running
2019-12-05 16:10:29 +09:00
Yu Watanabe
bf331d8717
network: if /sys is rw, then udev should be around
...
This switches detect_container() to path_is_read_only_rw("/sys"), as if
systemd-udevd.service is conditionalized with that way.
This also updates the log message.
2019-12-05 08:22:52 +09:00
Yu Watanabe
edc54f2f75
network: rename QDiscs to QDisc
2019-12-04 20:57:01 +09:00
Yu Watanabe
5ecb131d94
network: include NLMSGERR_ATTR_MSG attribute in error message
2019-11-30 16:14:02 +09:00
Yu Watanabe
737f140546
network: cleanup header inclusion
2019-10-30 22:23:43 +09:00
Yu Watanabe
4ecdcb07c9
network: wait for QDiscs to be configured
2019-10-30 09:33:51 +09:00
Susant Sahani
0f5bd7fe24
network: introduce TrafficControl
...
Add network delay to a interface
2019-10-30 09:33:51 +09:00
Yu Watanabe
78404d22cc
network: support matching based on wifi interfece type
2019-10-25 16:43:18 +09:00
Yu Watanabe
99b8517ca7
network: introduce Reconfigure() bus method
2019-10-24 14:20:48 +09:00
Yu Watanabe
277ba8d1ab
network: add support matching based on BSSID=
2019-10-15 01:59:56 +09:00
Yu Watanabe
0894cfe41c
network: also read BSSID
2019-10-15 01:59:13 +09:00
Yu Watanabe
8d968fdd99
network: support matching based on wifi SSID
2019-10-15 01:59:06 +09:00
Yu Watanabe
ad932b156c
network: introduce link_reconfigure()
...
Will be used in later commits.
2019-10-15 01:57:19 +09:00
Yu Watanabe
1a6bb31fae
network: split link_free() into two parts
2019-10-15 01:57:19 +09:00
Susant Sahani
c16c780804
network: introduce ip nexthop routing
...
Used to manipulate entries in the kernel's nexthop tables.
Example:
```
[NextHop]
Id=3
Gateway=192.168.5.1
```
2019-10-14 21:32:48 +09:00
Zbigniew Jędrzejewski-Szmek
800603524a
networkd: drop DHCPv4 config on stop, keep on restart, by default
...
This partially reverts 95355a281c
.
It seems that other parts of link_stop_clients() should be skipped
when restarting, but I don't know enough about those other clients to have
an opinion if it is better to stop&start them on restart or not.
Anyway, that can be done in later patches now that the support for restarts
is there.
Fixes #13625 .
2019-10-02 14:01:42 +02:00
Yu Watanabe
55a1729fd0
network: drop noisy log message
...
Closes #13595 .
2019-09-26 11:37:50 +09:00
Frantisek Sumsal
38288f0bb8
tree-wide: various code-formatting improvements
...
Reported/found by Coccinelle
2019-09-22 07:17:27 +02:00
Susant Sahani
299d578f7f
network: DHCP server Add support to transmit SIP server
...
1. DHCP server trasmit
2. Client parses and saves in leases
Implements http://www.rfc-editor.org/rfc/rfc3361.txt
```
Frame 134: 348 bytes on wire (2784 bits), 348 bytes captured (2784 bits) on interface 0
Ethernet II, Src: 42:65:85:d6:4e:32 (42:65:85:d6:4e:32), Dst: 1e:04:f8:b8:2f:d4 (1e:04:f8:b8:2f:d4)
Internet Protocol Version 4, Src: 192.168.5.1, Dst: 192.168.5.11
User Datagram Protocol, Src Port: 67, Dst Port: 68
Dynamic Host Configuration Protocol (ACK)
Message type: Boot Reply (2)
Hardware type: Ethernet (0x01)
Hardware address length: 6
Hops: 0
Transaction ID: 0x7cc87cb4
Seconds elapsed: 0
Bootp flags: 0x0000 (Unicast)
Client IP address: 0.0.0.0
Your (client) IP address: 192.168.5.11
Next server IP address: 0.0.0.0
Relay agent IP address: 0.0.0.0
Client MAC address: 1e:04:f8:b8:2f:d4 (1e:04:f8:b8:2f:d4)
Client hardware address padding: 00000000000000000000
Server host name not given
Boot file name not given
Magic cookie: DHCP
Option: (53) DHCP Message Type (ACK)
Length: 1
DHCP: ACK (5)
Option: (51) IP Address Lease Time
Length: 4
IP Address Lease Time: (3600s) 1 hour
Option: (1) Subnet Mask (255.255.255.0)
Length: 4
Subnet Mask: 255.255.255.0
Option: (3) Router
Length: 4
Router: 192.168.5.1
Option: (6) Domain Name Server
Length: 4
Domain Name Server: 192.168.5.1
Option: (42) Network Time Protocol Servers
Length: 4
Network Time Protocol Server: 192.168.1.1
Option: (120) SIP Servers <=====here
Length: 9
SIP Server Encoding: IPv4 Address (1)
SIP Server Address: 192.168.1.1
SIP Server Address: 192.168.5.2
Option: (101) TCode
Length: 13
TZ TCode: Europe/Berlin
Option: (54) DHCP Server Identifier (192.168.5.1)
Length: 4
DHCP Server Identifier: 192.168.5.1
Option: (255) End
Option End: 255
```
```
cat /run/systemd/netif/state ✔ ⚡ 3148 16:40:51
OPER_STATE=routable
CARRIER_STATE=carrier
ADDRESS_STATE=routable
DNS=192.168.94.2 192.168.5.1
NTP=192.168.5.1
SIP=192.168.1.1 192.168.5.2
```
aa
2019-09-20 21:22:23 +09:00
Frantisek Sumsal
59a224d728
Merge pull request #13577 from yuwata/network-fix-ci-failure
...
network: fix CI failure
2019-09-17 17:42:26 +00:00
Yu Watanabe
f136875549
network: make route_get() or friends take Route object
2019-09-17 21:53:42 +09:00
Yu Watanabe
4d59e14f32
network: do not enter failed state if device's sysfs entry does not exist yet
2019-09-17 21:34:06 +09:00
Yu Watanabe
b1b0b42e48
network: add missing link->network checks
...
When the function is called, no network file may be assigned to the
link.
2019-09-17 21:29:35 +09:00
Yu Watanabe
5539fc0f73
network: drop IPv6LL address when LinkLocalAddressing=no|ipv4
...
C.f. disscussion in #13533 .
Hopefully fixes #12886 .
2019-09-17 09:45:22 +09:00
Yu Watanabe
2aa7d367ec
network: do not create default route for ipv4 link local addressing
...
When nspawn container with private network starts, networkd creates
the default route for the interface. The route may cause problem on
the host side, and it can be created with DefaultRouteOnDevice= now.
Hence, this makes networkd not create the route implicitly any more.
Closes #13418 .
2019-09-15 22:33:11 +09:00
Yu Watanabe
b977347498
Merge pull request #13412 from yuwata/network-check-and-warn-more
...
network: check more static IPv6 configurations and add more warnings
2019-08-28 15:23:01 +09:00
Yu Watanabe
adfeee49c5
network: enable ipv6 when the network has static ipv6 configurations
2019-08-27 23:53:46 +09:00
Zbigniew Jędrzejewski-Szmek
57ad760746
network: drop all checks of ipv6_disabled sysctl
...
*We* control the sysctl setting. If the user configured IPv6, then we apply the
settings, and just make sure that at some point during the configuration the
sysctl is disabled (i.e. ipv6 enabled) if we have IPv6 configured.
Replaces #13283 .
2019-08-27 15:31:48 +02:00
Susant Sahani
482efedc08
network: Do not disable IPv6 by writing to sysctl
...
Only enable is and do not disable IPv6
2019-08-22 13:21:57 +02:00
Yu Watanabe
2d79289525
network: rename AddressFamilyBoolean -> AddressFamily
...
We usually do not call an extended boolean as XxxBoolean.
2019-08-16 22:02:17 +09:00
Lennart Poettering
24f36fb180
Merge pull request #13302 from yuwata/network-set-put-fixes
...
network: fixes related to set_put()
2019-08-14 16:18:06 +02:00
William A. Kennington III
d1bdafd214
networkd: Keep track of static neighbors
...
We need to keep track of the static neighbors that are configured on the
interface so that we can delete stale entries that were removed.
2019-08-12 20:28:19 +09:00
Yu Watanabe
3dc2e7af5f
network: add missing link_ref()
2019-08-11 09:11:25 +09:00
Yu Watanabe
75a302b561
network: fix potential memleaks related to set_put()
2019-08-11 08:57:01 +09:00
William A. Kennington III
0b1cd3e25a
networkd: Routes should take the gateway into account
...
Otherwise, changing the default gateway doesn't purge old gateway routes
left on the system during daemon restart. This also fixes removing other
foreign gateway routes that don't match the expected configuration.
Tested:
Changed gateway addresses prior to the patch and they lingered on
the system during each reconfiguration. Applied this patch and
reconfigured gateways and other routes multiple times and it removed
the foreign routes that had gateways that didn't match.
Signed-off-by: William A. Kennington III <william@wkennington.com>
2019-08-07 20:32:36 +09:00
Yu Watanabe
500b96eb34
network: drop redundant Link::kind check
...
All CAN devices' iftype are ARPHRD_CAN. So, checking Link::kind is
redundant.
Follow-up for c6ac3729c9
.
2019-07-25 16:47:16 +09:00
Yu Watanabe
c6ac3729c9
network: support slcan
...
The device driver does not have IFLA_INFO_KIND attribute. So, we need to
check iftype.
Closes #13150 .
2019-07-24 23:13:22 +09:00
Yu Watanabe
8f815e8b03
tree-wide: drop netinet/ether.h from socket-util.h and sd-netlink.h
2019-07-24 18:23:08 +09:00
Yu Watanabe
bd7d6cec33
network: do not touch kernel-created multicast route
...
Fixes #6088 .
2019-07-23 22:08:49 +09:00
Yu Watanabe
d4c52ee5b5
network: store routes provided by DHCPv4 in Set
...
This re-writes d03073ddcd
.
2019-07-19 01:44:44 +09:00
Yu Watanabe
8107f4731e
network: drop fallback mechanism to assign DHCPv6 addresses with IFA_F_NOPREFIXROUTE
...
The flag IFA_F_NOPREFIXROUTE was introduced in kernel-3.14. But even if
the kernel does not support the flag, it should be just ignored. So, it
is not necessary to do the fallback logic. Moreover, the current logic
is not a fallback mechanism but just retrying. So, it should not work.
Let's drop that.
2019-07-17 23:13:40 +09:00