Hello folks!
I'm trying to set up a wireless ap on odroid c1+, but having trouble with the bridge. For some reason the br0 cannot get an IP.
On the desktop computer I also have arch installed, and have no problem using the same config on it. Both desktop and odroid are connected directly to the same cable modem that has multiple ethernet ports.
First tried with the netctl using this guide. For a simple start the /etc/netctl/bridge looks like this:
$this->bbcode_second_pass_code('', 'Description="Example Bridge connection"
Interface=br0
Connection=bridge
BindsToInterfaces=(eth0)
IP=dhcp
## Ignore (R)STP and immediately activate the bridge
#SkipForwardingDelay=yes
')
Stopped the systemd network and the eth0:
$this->bbcode_second_pass_code('', 'systemctl stop systemd-networkd.service
ip link set eth0 down')
Then started the netctl service:
$this->bbcode_second_pass_code('', 'systemctl start netctl@bridge.service
[97298.520913@3] netdev_open
[97298.520947@3] Ethernet reset
[97298.520995@3] NET MDA descpter start addr=ed600000
[97298.579714@0] phy_interface = 0
[97298.579761@0] aml_phy_init: trying to attach to 0:01
[97298.582430@0] am_rtl811f called phy reset
[97298.599787@0] --1--write mac add to:eea7e688: 00 1e 06 20 17 93 |.. .|
[97298.600852@0] --2--write mac add to:eea7e688: 00 1e 06 20 17 93 |.. 7.|
[97298.607608@0] write mac add to:eea7e688: 00 1e 06 20 17 93 |.. .|
[97298.613794@0] Current DMA mode=0, set mode=621c100
[97298.628668@0] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[97298.651060@0] IPv6: ADDRCONF(NETDEV_UP): br0: link is not ready
[97302.599730@0] [adjust link] -> eth: full-duplex
[97302.599776@0] [adjust link] -> eth: phy_speed <> priv_speed)
[97302.604288@0] [adjust link -> eth: am_adjust_link state change (new_state=true)
[97302.611576@0] libphy: 0:01 - Link is Up - 1000/Full
[97302.616577@0] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[97302.623164@0] br0: port 1(eth0) entered forwarding state
[97302.628202@0] br0: port 1(eth0) entered forwarding state
[97302.633608@0] IPv6: ADDRCONF(NETDEV_CHANGE): br0: link becomes ready
[97317.639523@0] br0: port 1(eth0) entered forwarding state
Job for netctl@bridge.service failed because the control process exited with error code. See "systemctl status
netctl@bridge.service" and "journalctl -xe" for details.')
$this->bbcode_second_pass_code('', 'systemctl status netctl@bridge.service -l
Jan 05 16:32:57 alarm dhcpcd[27306]: DUID 00:01:00:01:1e:1e:9a:bb:2e:85:a1:da:08:b1
Jan 05 16:32:57 alarm dhcpcd[27306]: br0: IAID a1:da:08:b1
Jan 05 16:32:57 alarm dhcpcd[27306]: br0: soliciting a DHCP lease
Jan 05 16:33:23 alarm dhcpcd[27306]: timed out
Jan 05 16:33:23 alarm network[27296]: DHCP IPv4 lease attempt failed on interface 'br0'
Jan 05 16:33:23 alarm network[27296]: Failed to bring the network up for profile 'bridge'
Jan 05 16:33:23 alarm systemd[1]: netctl@bridge.service: Main process exited, code=exited, status=1/FAILURE
Jan 05 16:33:23 alarm systemd[1]: Failed to start Networking for netctl profile bridge.
Jan 05 16:33:23 alarm systemd[1]: netctl@bridge.service: Unit entered failed state.
Jan 05 16:33:23 alarm systemd[1]: netctl@bridge.service: Failed with result 'exit-code'.
')
After that ifconfig shows no ipv4 for br0:
$this->bbcode_second_pass_code('', 'br0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet6 fe80::2c85:a1ff:feda:8b1 prefixlen 64 scopeid 0x20<link>
ether 2e:85:a1:da:08:b1 txqueuelen 0 (Ethernet)
RX packets 6840 bytes 339008 (331.0 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 102 bytes 24416 (23.8 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
eth0: flags=4419<UP,BROADCAST,RUNNING,PROMISC,MULTICAST> mtu 1500
inet6 fe80::21e:6ff:fe20:1793 prefixlen 64 scopeid 0x20<link>
ether 00:1e:06:20:17:93 txqueuelen 1000 (Ethernet)
RX packets 4013958 bytes 483810184 (461.3 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 7687445 bytes 2325655294 (2.1 GiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 40
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 0 (Local Loopback)
RX packets 37667 bytes 16806688 (16.0 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 37667 bytes 16806688 (16.0 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0')
Tried also to reboot the system with netctl enabled and systemd.network disabled, but I get the same error.
Then I disabled the netctl service and tried with going back to the systemd using this guide. Configs are the following:
/etc/systemd/network/bridge.netdev$this->bbcode_second_pass_code('', '
[NetDev]
Name=br0
Kind=bridge
')
/etc/systemd/network/eth0.network$this->bbcode_second_pass_code('', '
[Match]
Name=eth0
[Network]
Bridge=br0
')
/etc/systemd/network/bridge.network$this->bbcode_second_pass_code('', '
[Match]
Name=br0
[Network]
DHCP=ipv4')
But I get a very similar error by enabling and starting the systemd-network service or by rebooting the system.
This also work on the PC (with enp0s3 instead of eth0), but not on the odroid.
What am I missing?