CentOS 7 网络连接优先由与无线问题解决

该解决方法不具有一般性:

由于我安装CentOS 7系统时选择的是服务器模式而不是家用个人计算机之类的模式,网络配置阶段,有线禁用了dhcp协议,也没有无线相关的内容,于是在gnome下根本没有无线网络的配置选项。有线网络也难以连接。

1. 解决有线网络连接问题:打开/etc/sysconfig/network-scripts,其中有前缀为ipcfg-的配置文件名为 ifcfg-p8p1 , 修改后内容如下:(只是将BOOTPROTO=no改为 dhcp,网上有些帖子说要把ONBOOT=no改为yes,但我不存在这个问题)

TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
NAME=p8p1
UUID=645a02e2-2178-46b4-8377-7047e1d87838
DEVICE=p8p1
ONBOOT=yes
IPADDR=192.168.1.100
PREFIX=24
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_PRIVACY=no

然后重起网络服务:service network restart,就ok了;

2. 解决无线网络问题:

在解决有线网络连接之前无线网络按此方法是不行的:

相关命令:

dmesg | grep firmware(查看有没有来自无线网卡的固件请求)

iw:

iw dev(查找无线网卡口)

iw wls1 link(查看wls1网口无线网络连接情况)

iw wls1 scan | grep SSID(查看wls1网口可连接的wifi)

ip:

ip link set wls1 up(将无线网口wls1开启)

ip link show wls1(显示无线网口wls1连接情况)

ip addr  show wls1(显示分配的ip地址,特别适用于查看是否成功地通过dhcp自动获取了ip地址)

wpa_supplican:

wpa_supplicant -B -i wlp3s0 -c <(wpa_passphrase "ssid" "psk") (连接无线网ssid,密码psk)

dhclient:

dhclient wls1(为wls1分配ip地址)

如需使用上述命令,只需将wls1直接更换成自己网口就行了

二.具体过程:
查看是否需要安装固件

大多无线网卡还需要固件。内核一般会自动探测并加载两者,如果您得到类似 SIOCSIFFLAGS: No such file or directory 的输出,意味着您得手动加载固件。若不确定,用 dmesg 查询内核日志,看看有没有来自无线网卡的固件请求。比如您有 Intel 芯片组,输出大概是这样:
# dmesg | grep firmware
firmware: requesting iwlwifi-5000-1.ucode
若无输出,表明系统的无线芯片不需要固件。

查看无线网口:

#iw dev(interface后面即为无线网口号)

phy#0
    Interface wlp2s0
        ifindex 3
        wdev 0x1
        addr ac:7b:a1:07:ef:04
        ssid M3A60X
        type managed
        channel 11 (2462 MHz), width: 20 MHz, center1: 2462 MHz

激活无线网络接口:
# ip link set wlp2s0 up
为了检验接口是否激活成功,您可以查看以下命令的输出:
# ip link show wls1
3: wlp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DORMANT qlen 1000
    link/ether ac:7b:a1:07:ef:04 brd ff:ff:ff:ff:ff:ff

查看无线网络连接情况:#iw wls1 link
刚开始应该会显示无连接

扫描可连接的wifi
#iw wls1 scan | grep SSID   

连接指定的SSID
# wpa_supplicant -B -i wlp3s0 -c <(wpa_passphrase "ssid" "psk")
将ssid 替换为实际的网络名称,psk 替换为无线密码,请保留引号。

用dhcp 获得 IP 分配:
# dhclient wlp3s0

测试是否成功地从路由器获取了ip(重要)

#ip addr  show wls1如果分配有ip,即可上网,也可以有ping直接测试

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/14679.html