redroid-rockchip / .github

8 stars 2 forks source link

虚拟wifi开启后能连接到wifi但是上不了网(default route缺失?) #4

Open Frefreak opened 4 months ago

Frefreak commented 4 months ago

image

docker run -itd --rm --privileged \
        --pull always -v ~/data:/data \
        -v /dev/mali0:/dev/mali0 \
        -p 5555:5555 \
        iceblacktea/redroid-arm64:12.0.0-240328 \
        androidboot.redroid_gpu_mode=mali \
        androidboot.redroid_virtual_wifi=1

启动后能看到ChinaNet等4个wifi网络但是连上后都显示无法提供网络。

看了下ip route是这样的:

192.168.1.0/24 dev wlan0 proto kernel scope link src 192.168.1.2
192.168.200.0/24 dev radio0 proto kernel scope link src 192.168.200.2

但是如果手动加上default route就可以正常上网了 ip route add default via 192.168.1.1

作为对比如果启动时不加redroid_virtual_wifi=1好像就会自动生成一条default route规则,这时虽然没有wifi但是可以正常连接网络。

请问下default route缺失是预期的吗,可能是啥问题

ice-black-tea commented 4 months ago

理论上有默认路由才对

$ ip route show table wlan0
default via 192.168.1.1 dev wlan0 proto static
192.168.1.0/24 dev wlan0 proto static scope link

dhcpserver分配给wlan0的信息都对吗

Frefreak commented 4 months ago
redroid_arm64:/ $ ip route show table wlan0
Error: argument "wlan0" is wrong: table id value is invalid

255|redroid_arm64:/ $ ip route show table all
192.168.1.0/24 dev wlan0 proto kernel scope link src 192.168.1.2
192.168.200.0/24 dev radio0 proto kernel scope link src 192.168.200.2
broadcast 127.0.0.0 dev lo table local proto kernel scope link src 127.0.0.1
local 127.0.0.0/8 dev lo table local proto kernel scope host src 127.0.0.1
local 127.0.0.1 dev lo table local proto kernel scope host src 127.0.0.1
broadcast 127.255.255.255 dev lo table local proto kernel scope link src 127.0.0.1
broadcast 192.168.1.0 dev wlan0 table local proto kernel scope link src 192.168.1.2
local 192.168.1.2 dev wlan0 table local proto kernel scope host src 192.168.1.2
broadcast 192.168.1.255 dev wlan0 table local proto kernel scope link src 192.168.1.2
broadcast 192.168.200.0 dev radio0 table local proto kernel scope link src 192.168.200.2
local 192.168.200.2 dev radio0 table local proto kernel scope host src 192.168.200.2
broadcast 192.168.200.255 dev radio0 table local proto kernel scope link src 192.168.200.2
local ::1 dev lo proto kernel metric 0 pref medium
local fe80::60e0:38ff:fef4:6a2c dev radio0 proto kernel metric 0 pref medium
local fe80::9243:461b:97e0:980 dev wlan0 proto kernel metric 0 pref medium
fe80::/64 dev radio0 proto kernel metric 256 pref medium
fe80::/64 dev wlan0 proto kernel metric 256 pref medium
multicast ff00::/8 dev radio0 proto kernel metric 256 pref medium
multicast ff00::/8 dev wlan0 proto kernel metric 256 pref medium
redroid_arm64:/ $ ip ad
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 02:2b:51:00:00:00 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.2/24 brd 192.168.1.255 scope global wlan0
       valid_lft forever preferred_lft forever
    inet6 fe80::9243:461b:97e0:980/64 scope link stable-privacy
       valid_lft forever preferred_lft forever
4: radio0@if2: <BROADCAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 62:e0:38:f4:6a:2c brd ff:ff:ff:ff:ff:ff link-netnsid 1
    inet 192.168.200.2/24 brd 192.168.200.255 scope global radio0
       valid_lft forever preferred_lft forever
    inet6 fe80::60e0:38ff:fef4:6a2c/64 scope link
       valid_lft forever preferred_lft forever

dhcpserver分配给wlan0的信息都对吗

这个应该怎么看

Frefreak commented 4 months ago

asdf.log 这个是logcat输出,14:26:21的样子有尝试切换到"CMCC"网络,但还是没有default route

ice-black-tea commented 4 months ago
redroid_arm64:/ $ ip route show table wlan0
Error: argument "wlan0" is wrong: table id value is invalid

255|redroid_arm64:/ $ ip route show table all
192.168.1.0/24 dev wlan0 proto kernel scope link src 192.168.1.2
192.168.200.0/24 dev radio0 proto kernel scope link src 192.168.200.2
broadcast 127.0.0.0 dev lo table local proto kernel scope link src 127.0.0.1
local 127.0.0.0/8 dev lo table local proto kernel scope host src 127.0.0.1
local 127.0.0.1 dev lo table local proto kernel scope host src 127.0.0.1
broadcast 127.255.255.255 dev lo table local proto kernel scope link src 127.0.0.1
broadcast 192.168.1.0 dev wlan0 table local proto kernel scope link src 192.168.1.2
local 192.168.1.2 dev wlan0 table local proto kernel scope host src 192.168.1.2
broadcast 192.168.1.255 dev wlan0 table local proto kernel scope link src 192.168.1.2
broadcast 192.168.200.0 dev radio0 table local proto kernel scope link src 192.168.200.2
local 192.168.200.2 dev radio0 table local proto kernel scope host src 192.168.200.2
broadcast 192.168.200.255 dev radio0 table local proto kernel scope link src 192.168.200.2
local ::1 dev lo proto kernel metric 0 pref medium
local fe80::60e0:38ff:fef4:6a2c dev radio0 proto kernel metric 0 pref medium
local fe80::9243:461b:97e0:980 dev wlan0 proto kernel metric 0 pref medium
fe80::/64 dev radio0 proto kernel metric 256 pref medium
fe80::/64 dev wlan0 proto kernel metric 256 pref medium
multicast ff00::/8 dev radio0 proto kernel metric 256 pref medium
multicast ff00::/8 dev wlan0 proto kernel metric 256 pref medium
redroid_arm64:/ $ ip ad
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 02:2b:51:00:00:00 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.2/24 brd 192.168.1.255 scope global wlan0
       valid_lft forever preferred_lft forever
    inet6 fe80::9243:461b:97e0:980/64 scope link stable-privacy
       valid_lft forever preferred_lft forever
4: radio0@if2: <BROADCAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 62:e0:38:f4:6a:2c brd ff:ff:ff:ff:ff:ff link-netnsid 1
    inet 192.168.200.2/24 brd 192.168.200.255 scope global radio0
       valid_lft forever preferred_lft forever
    inet6 fe80::60e0:38ff:fef4:6a2c/64 scope link
       valid_lft forever preferred_lft forever

dhcpserver分配给wlan0的信息都对吗

这个应该怎么看

你那环境相较于我的环境确实少了default route,后续版本我脚本里主动添加一下default route来解决这个问题吧

hjxcode commented 3 months ago

你好,我也遇到了这个问题,请问解决了么?我的现象是显示连接wif,正在获取ip,但没办法真正连接上,容器内的route也是只有一条 image

image

jianglin-code commented 2 weeks ago

虚拟wifi有下行网络,没有上行网络?