I am new to arch and networking. After reading the doc and many posts, I am still unable to solve my problem.
I am running arch on virtualbox. The host machine uses a wireless connection. I installed arch, and followed the installation guide to set up my hostname and hostname resolution. But the network didn't work without install image. So I installed dhcpcd and enabled it. Now I am able to ping 8.8.8.8 and get response. But I am still unable to ping a domain name. And I get no ipv6 routers available message from dhcpcd.
I think this is related to DNS resolution. My /etc/resolv.conf is empty besides some comments. If I manually add nameserver 8.8.8.8 as mentioned here, the problem is solved. But my understanding is that I should not need to manually set the resolv.conf file, it should be handled by hdcpcd.
I think the problem is DNS resolution as detailed here. I started the dhcpcd and systemd-resolved, now I am able to ping a domain name although the dhcpcd client still has the same error msg. nslookup and host cannot connect to server either.
Also, I have not set up clipboard so I only have screenshots. Any hints are helpful!

My host is a mbp with wireless connection, here is output of ifconfig
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
options=1203<RXCSUM,TXCSUM,TXSTATUS,SW_TIMESTAMP>
inet 127.0.0.1 netmask 0xff000000
inet6 ::1 prefixlen 128
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
nd6 options=201<PERFORMNUD,DAD>
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
stf0: flags=0<> mtu 1280
EHC29: flags=0<> mtu 0
EHC26: flags=0<> mtu 0
XHC20: flags=0<> mtu 0
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=10b<RXCSUM,TXCSUM,VLAN_HWTAGGING,AV>
ether 10:dd:b1:a9:eb:c0
nd6 options=201<PERFORMNUD,DAD>
media: autoselect (none)
status: inactive
en1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether 4c:8d:79:e8:8e:d0
inet6 fe80::1423:696d:a3f1:3d11%en1 prefixlen 64 secured scopeid 0x8
inet 192.168.0.101 netmask 0xffffff00 broadcast 192.168.0.255
nd6 options=201<PERFORMNUD,DAD>
media: autoselect
status: active
p2p0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 2304
ether 0e:8d:79:e8:8e:d0
media: autoselect
status: inactive
awdl0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1484
ether 52:8c:a3:f0:33:f7
inet6 fe80::508c:a3ff:fef0:33f7%awdl0 prefixlen 64 scopeid 0xa
nd6 options=201<PERFORMNUD,DAD>
media: autoselect
status: active
en4: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
options=60<TSO4,TSO6>
ether d2:00:18:1f:c2:40
media: autoselect <full-duplex>
status: inactive
fw0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 4078
lladdr 10:dd:b1:ff:fe:81:fc:24
nd6 options=201<PERFORMNUD,DAD>
media: autoselect <full-duplex>
status: inactive
bridge0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=63<RXCSUM,TXCSUM,TSO4,TSO6>
ether d2:00:18:1f:c2:40
Configuration:
id 0:0:0:0:0:0 priority 0 hellotime 0 fwddelay 0
maxage 0 holdcnt 0 proto stp maxaddr 100 timeout 1200
root id 0:0:0:0:0:0 priority 0 ifcost 0 port 0
ipfilter disabled flags 0x2
member: en4 flags=3<LEARNING,DISCOVER>
ifmaxaddr 0 port 11 priority 0 path cost 0
nd6 options=201<PERFORMNUD,DAD>
media: <unknown type>
status: inactive
utun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 2000
inet6 fe80::461a:1df6:901b:70f5%utun0 prefixlen 64 scopeid 0xe
nd6 options=201<PERFORMNUD,DAD>
This is the network setting of the VM. It's in default settings.
