关于WRTNODE2R WIFI的问题

各位好,请教个问题,我自己编译出的WRTNODE2R固件,跑起来后通过setwifi XXX XXXXXX连接上外网,但是通过PC连接WRTNODE WIFI(即AP)也能连接上,且可分配到IP地址,但是PC就是上不了外网,此行为只能持续一会儿,过一会WIFI就断了,请问各位大侠,是我编译得不对吗?还是哪里需要配置?请指教,万分感谢!
已邀请:

xzmu - 10w

赞同来自:

编译固件的源码在哪下载的呢?
 
还有此行为只能持续一会儿 ,这段话不太理解。是不是你的电脑就没连上板子的ap啊?
 

老男人

赞同来自:

源码就是在wrtnode.cc官网上下载的,https://github.com/wrtnode
持续一会儿的意思就是只要执行setwifi xxx xxxxx后,PC连到板子的AP就会断掉,或者如果PC先连板子的AP,再在板子上执行setwifi xxx xxxxx命令后,也会断掉(如果不执行setwifi xxx xxxxx命令,则不会断)

xzmu - 10w

赞同来自:

setwifi的过程肯定会重启wifi网络,势必会导致pc的连接断开啊
 
所以顺序肯定是先setwifi,再连接上pc
 
还有就是,你setwifi确认连上外网了么?板子能ping通外部的ip(例如114.114.114.114)?如果不能,你应该先检查板子是否连上外网

老男人

赞同来自:

可以ping通外网,但是现在问题是,一旦setwifi后,我PC就连不上板子的AP了

老男人

赞同来自:

root@OpenWrt:~# ping 114.114.114.114
PING 114.114.114.114 (114.114.114.114): 56 data bytes
64 bytes from 114.114.114.114: seq=0 ttl=88 time=62.799 ms
64 bytes from 114.114.114.114: seq=1 ttl=84 time=75.964 ms
64 bytes from 114.114.114.114: seq=2 ttl=77 time=59.444 ms
64 bytes from 114.114.114.114: seq=3 ttl=89 time=43.444 ms
64 bytes from 114.114.114.114: seq=4 ttl=89 time=44.212 ms
^C
--- 114.114.114.114 ping statistics ---
5 packets transmitted, 5 packets received, 0% packet loss
round-trip min/avg/max = 43.444/57.172/75.964 ms

xzmu - 10w

赞同来自:

把你的/etc/confg/wireless文件 和/etc/config/network文件粘贴上来看看? 

老男人

赞同来自:

root@OpenWrt:~# cat /etc/config/wireless 

config wifi-device 'ra0'
        option type 'ralink'
        option mode '9'
        option txpower '100'
        option ht '20'
        option country 'US'
        option disabled '0'
        option channel '11'

config wifi-iface
        option device 'ra0'
        option network 'lan'
        option mode 'ap'
        option ssid 'WRTnode2R_24E8'
        option encryption 'psk2'
        option key '12345678'
        option ApCliEnable '1'
        option ApCliAuthMode 'WPA2PSK'
        option ApCliEncrypType 'AES'
        option ApCliSsid 'CQSET1'
        option ApCliPassWord '1234567890'
 
 
root@OpenWrt:~# cat /etc/config/network 

config interface 'loopback'
        option ifname 'lo'
        option proto 'static'
        option ipaddr '127.0.0.1'
        option netmask '255.0.0.0'

config globals 'globals'
        option ula_prefix 'fdba:9321:981b::/48'

config interface 'lan'
        option ifname 'eth0.1'
        option force_link '1'
        option macaddr '64:51:7e:80:24:e8'
        option type 'bridge'
        option proto 'static'
        option ipaddr '192.168.8.1'
        option netmask '255.255.255.0'

config interface 'wan'
        option ifname 'eth0.2'
        option force_link '1'
        option macaddr '64:51:7e:80:24:e9'
        option proto 'dhcp'

config interface 'wwan'
        option ifname 'apcli0'
        option proto 'dhcp'

config switch
        option name 'switch0'
        option reset '1'
        option enable_vlan '1'

config switch_vlan
        option device 'switch0'
        option vlan '1'
        option ports '0 1 2 3 6t'

config switch_vlan
        option device 'switch0'
        option vlan '2'
        option ports '4 6t'

xzmu - 10w

赞同来自:

我看了看,你的配置没有问题,可能是你pc驱动的问题,你可以尝试在setwifi之后,用手机连板子的ap看

老男人

赞同来自:

用手机连上也只能获取到IP,外网还是上不了

xzmu - 10w

赞同来自:

setwifi之后,ia命令的输出给一下

老男人

赞同来自:

root@OpenWrt:/# ia
apcli0    Link encap:Ethernet  HWaddr 66:51:7E:00:24:E8  
          inet addr:192.168.3.28  Bcast:192.168.3.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:10 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

xzmu - 10w

赞同来自:

/etc/config/firewall这个文件看一下

老男人

赞同来自:

root@OpenWrt:/# cat /etc/config/firewall 
config defaults
        option syn_flood        1
        option input            ACCEPT
        option output           ACCEPT
        option forward          REJECT
# Uncomment this line to disable ipv6 rules
#       option disable_ipv6     1

config zone
        option name             lan
        list   network          'lan'
        option input            ACCEPT
        option output           ACCEPT
        option forward          ACCEPT

config zone
        option name             wan
        list   network          'wan'
        list   network          'wwan'
        option input            REJECT
        option output           ACCEPT
        option forward          REJECT
        option masq             1
        option mtu_fix          1

config forwarding
        option src              lan
        option dest             wan

# We need to accept udp packets on port 68,
# see https://dev.openwrt.org/ticket/4108
config rule
        option name             Allow-DHCP-Renew
        option src              wan
        option proto            udp
        option dest_port        68
        option target           ACCEPT
        option family           ipv4

# Allow IPv4 ping
config rule
        option name             Allow-Ping
        option src              wan
        option proto            icmp
        option icmp_type        echo-request
        option family           ipv4
        option target           ACCEPT

config rule
        option name             Allow-IGMP
        option src              wan
        option proto            igmp
        option family           ipv4
        option target           ACCEPT

# Allow DHCPv6 replies
# see https://dev.openwrt.org/ticket/10381
config rule
        option name             Allow-DHCPv6
        option src              wan
        option proto            udp
        option src_ip           fe80::/10
        option src_port         547
        option dest_ip          fe80::/10
        option dest_port        546
        option family           ipv6
        option target           ACCEPT

config rule
        option name             Allow-MLD
        option src              wan
        option proto            icmp
        option src_ip           fe80::/10
        list icmp_type          '130/0'
        list icmp_type          '131/0'
        list icmp_type          '132/0'
        list icmp_type          '143/0'
        option family           ipv6
        option target           ACCEPT

# Allow essential incoming IPv6 ICMP traffic
config rule
        option name             Allow-ICMPv6-Input
        option src              wan
        option proto    icmp
        list icmp_type          echo-request
        list icmp_type          echo-reply
        list icmp_type          destination-unreachable
        list icmp_type          packet-too-big
        list icmp_type          time-exceeded
        list icmp_type          bad-header
        list icmp_type          unknown-header-type
        list icmp_type          router-solicitation
        list icmp_type          neighbour-solicitation
        list icmp_type          router-advertisement
        list icmp_type          neighbour-advertisement
        option limit            1000/sec
        option family           ipv6
        option target           ACCEPT

# Allow essential forwarded IPv6 ICMP traffic
config rule
        option name             Allow-ICMPv6-Forward
        option src              wan
        option dest             *
        option proto            icmp
        list icmp_type          echo-request
        list icmp_type          echo-reply
        list icmp_type          destination-unreachable
        list icmp_type          packet-too-big
        list icmp_type          time-exceeded
        list icmp_type          bad-header
        list icmp_type          unknown-header-type
        option limit            1000/sec
        option family           ipv6
        option target           ACCEPT

# include a file with users custom iptables rules
config include
        option path /etc/firewall.user


### EXAMPLE CONFIG SECTIONS
# do not allow a specific ip to access wan
#config rule
#       option src              lan
#       option src_ip   192.168.45.2
#       option dest             wan
#       option proto    tcp
#       option target   REJECT

# block a specific mac on wan
#config rule
#       option dest             wan
#       option src_mac  00:11:22:33:44:66
#       option target   REJECT

# block incoming ICMP traffic on a zone
#config rule
#       option src              lan
#       option proto    ICMP
#       option target   DROP

# port redirect port coming in on wan to lan
#config redirect
#       option src                      wan
#       option src_dport        80
#       option dest                     lan
#       option dest_ip          192.168.16.235
#       option dest_port        80
#       option proto            tcp

# port redirect of remapped ssh port (22001) on wan
#config redirect
#       option src              wan
#       option src_dport        22001
#       option dest             lan
#       option dest_port        22
#       option proto            tcp

# allow IPsec/ESP and ISAKMP passthrough
config rule
        option src              wan
        option dest             lan
        option proto            esp
        option target           ACCEPT

config rule
        option src              wan
        option dest             lan
        option dest_port        500
        option proto            udp
        option target           ACCEPT

### FULL CONFIG SECTIONS
#config rule
#       option src              lan
#       option src_ip   192.168.45.2
#       option src_mac  00:11:22:33:44:55
#       option src_port 80
#       option dest             wan
#       option dest_ip  194.25.2.129
#       option dest_port        120
#       option proto    tcp
#       option target   REJECT

#config redirect
#       option src              lan
#       option src_ip   192.168.45.2
#       option src_mac  00:11:22:33:44:55
#       option src_port         1024
#       option src_dport        80
#       option dest_ip  194.25.2.129
#       option dest_port        120
#       option proto    tcp
root@OpenWrt:/# 

xzmu - 10w

赞同来自:

配置文件都是比较正常的,那你现在用手机、或者电脑连接上板子,获取到的ip是什么样的

老男人

赞同来自:

获取到的IP也是对的,但是就是上不了外网

xzmu - 10w

赞同来自:

在电脑上,分别操作这几个
 
tracert 114.114.114.114
ping 192.168.8.1
 
输出结果我看一下

老男人

赞同来自:

C:\Users\Think>tracert 114.114.114.114

通过最多 30 个跃点跟踪
到 public1.114dns.com [114.114.114.114] 的路由:

  1     1 ms    <1 毫秒   <1 毫秒 OpenWrt.lan [192.168.8.1]
  2     *        *        *     请求超时。
  3     *        *        *     请求超时。
  4     *        *        *     请求超时。
  5     *        *        *     请求超时。
  6     *        *        *     请求超时。
  7     *        *        *     请求超时。
  8     *        *        *     请求超时。
  9     *        *        *     请求超时。
 10     *     ^C
C:\Users\Think>ping 192.168.8.1

正在 Ping 192.168.8.1 具有 32 字节的数据:
来自 192.168.8.1 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.8.1 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.8.1 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.8.1 的回复: 字节=32 时间<1ms TTL=64

192.168.8.1 的 Ping 统计信息:
    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
    最短 = 0ms,最长 = 0ms,平均 = 0ms
--------------------------------------------------------------------如果看不清,见附件图
 

xzmu - 10w

赞同来自:

大概明白了,在pc可以ping通板子的情况下,板子是否可以连上外网?
 
如果板子这时候不能连上外网,则说明板子的连接外网的wifi已经断开了
 
如果板子可以连上外网,请执行以下语句
 
echo 1 > /proc/sys/net/ipv4/ip_forward
 
然后再试试

老男人

赞同来自:

这个值是1

老男人

赞同来自:

root@OpenWrt:/overlay# cat /proc/sys/net/ipv4/ip_forward
1

老男人

赞同来自:

pc可以ping通板子,板子也可以ping通外网,但是PC就是ping不通外网
官网上下载的wrtnode2r固件是没有问题的。
或者这样,你那有没有编译好的固件,发给我试一下,看有没有这个问题,可否?多谢

老男人

赞同来自:

这个固件是可以的,没有我说的这个问题,可我下载的源码编译出来就有这个问题,你能否把你的源码发一份给我试一下,多谢。

老男人

赞同来自:

我就是在这上面下载的,编译出来就有这个问题

xzmu - 10w

赞同来自:

内核模块没有加载上,多半是内核编译的时候有异常,建议你
make target/linux/clean 
一次之后,再重新编译

老男人

赞同来自:

可以了,终于没问题了,非常感谢您。

要回复问题请先登录注册