ubuntu 18.04网络问题

ubuntu 18.04网络问题汇总

准备工作

安装好系统之后,检查gcc和make是否已经安装

shell 复制代码
$ which gcc
/usr/bin/gcc
$ which make
/usr/bin/make

如果未安装,则安装gcc和make

shell 复制代码
$ apt install gcc
$ apt install make

安装openssh-server

shell 复制代码
$ apt install openssh-server

安装网络工具和防火墙

shell 复制代码
$ apt install net-tools
$ apt install ufw

开通端口

shell 复制代码
$ ufw allow 22

一、有线网卡不可用

准备设置静态IP时,发现没有有线网卡,无法正常插网线进行联网。

执行ipconfig 查看网卡配置是否有ethxx或者enxx,也没有,则说明有线网卡的驱动需要更新。

前往Intel官网下载驱动 , 选择3.8.4版本下载, 然后将下载的软件e1000e-3.8.4.tar.gz通过U盘拷贝到服务器。

解压e1000e-3.8.4.tar.gz安装包文件

shell 复制代码
$ tar -zxvf e1000e-3.8.4.tar.gz

或者

shell 复制代码
$ gunzip e1000e-3.8.4.tar.gz 
$ tar xvf e1000e-3.8.4.ta

编译有线网卡驱动

shell 复制代码
$ cd e1000e-3.8.4/src
$ sudo make
*** disabled for this build.
make[1]: Entering directory '/usr/src/linux-headers-4.15.0-142-generic'
  Building modules, stage 2.
  MODPOST 1 modules
make[1]: Leaving directory '/usr/src/linux-headers-4.15.0-142-generic'

安装有线网卡驱动

shell 复制代码
$ sudo make install
*** The target kernel has CONFIG_MODULE_SIG_ALL enabled, but
*** the signing key cannot be found. Module signing has been
make[1]: Leaving directory '/usr/src/linux-headers-4.15.0-142-generic'
Running depmod...

启用有线网卡启动,如果没有报错,正常情况下可以看到有线网卡已经正常可用了。

shell 复制代码
$ sudo modprobe e1000e

如果遇到modprobe: ERROR: could not insert 'e1000e': Required key not available,这是因为从内核4.4.0-20 开始启用EFI_SECURE_BOOT_SIG_ENFORCE编译选项,如果启用UEFI Secure Boot,将禁止加载未签名的第三方驱动。

重启电脑,按ESC进Blos-->secuity-->secure boot-->enabled,重新进入系统,以太网正常连接。

二、无法访问外网

服务器上部署了docker镜像后,调用接口提示无法访问外网,去服务器上查看,确实无法ping通百度。

shell 复制代码
$ ping www.baidu.com
ping: www.baidu.com: 未知的名称或服务

修改并应用网口信息,并重启网络

shell 复制代码
$ vim  /etc/network/interfaces
$ cat  /etc/network/interfaces
# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

auto eno1
iface eno1 inet static
address 192.168.248.142
gateway 192.168.248.254
netmask 255.255.255.0
dns-nameserver 192.168.42.161
dns-nameserver 8.8.8.8

$ netplan apply
$ systemctl restart networking

再次ping百度还是不同

shell 复制代码
$ ping www.baidu.com
ping: www.baidu.com: 未知的名称或服务

查看域名解析配置文件,发现里面的nameserver和我们的dns配置不一致。

shell 复制代码
$ cat /etc/resolv.conf
# This file is managed by man:systemd-resolved(8). Do not edit.
#
# This is a dynamic resolv.conf file for connecting local clients to the
# internal DNS stub resolver of systemd-resolved. This file lists all
# configured search domains.
#
# Run "systemd-resolve --status" to see details about the uplink DNS servers
# currently in use.
#
# Third party programs must not access this file directly, but only through the
# symlink at /etc/resolv.conf. To manage man:resolv.conf(5) in a different way,
# replace this symlink by a static file or a different symlink.
#
# See man:systemd-resolved.service(8) for details about the supported modes of
# operation for /etc/resolv.conf.
nameserver 127.0.0.53
options edns0

修改域名解析配置文件如下,保存并退出

shell 复制代码
$ vim /etc/resolv.conf
nameserver 192.168.42.161
options eno1

再次ping百度,成功。

shell 复制代码
$ ping www.baidu.com
PING www.a.shifen.com (183.2.172.42) 56(84) bytes of data.
64 bytes from 183.2.172.42 (183.2.172.42): icmp_seq=1 ttl=51 time=7.02 ms
64 bytes from 183.2.172.42 (183.2.172.42): icmp_seq=2 ttl=51 time=7.06 ms
^C
--- www.a.shifen.com ping statistics ---
9 packets transmitted, 9 received, 0% packet loss, time 9079ms
rtt min/avg/max/mdev = 6.393/7.012/8.473/0.798 ms

如果你的docker镜像启动的时候network_mode选择的是host,则还需要重启一次容器,否则程序还是不能访问到外网。

相关推荐
白帽黑客沐瑶3 小时前
【网络安全就业】信息安全专业的就业前景(非常详细)零基础入门到精通,收藏这篇就够了
网络·安全·web安全·计算机·程序员·编程·网络安全就业
可涵不会debug4 小时前
【IoTDB】时序数据库选型指南:工业大数据场景下的技术突围
数据库·时序数据库
ByteBlossom4 小时前
MySQL 面试场景题之如何处理 BLOB 和CLOB 数据类型?
数据库·mysql·面试
麦兜*4 小时前
MongoDB Atlas 云数据库实战:从零搭建全球多节点集群
java·数据库·spring boot·mongodb·spring·spring cloud
Slaughter信仰4 小时前
深入理解Java虚拟机:JVM高级特性与最佳实践(第3版)第十章知识点问答(10题)
java·jvm·数据库
麦兜*4 小时前
MongoDB 在物联网(IoT)中的应用:海量时序数据处理方案
java·数据库·spring boot·物联网·mongodb·spring
树码小子4 小时前
Java网络编程:(socket API编程:TCP协议的 socket API -- 回显程序的服务器端程序的编写)
java·网络·tcp/ip
-Xie-4 小时前
Mysql杂志(十六)——缓存池
数据库·mysql·缓存
七夜zippoe4 小时前
缓存与数据库一致性实战手册:从故障修复到架构演进
数据库·缓存·架构