关于默认网关的添加。记得楼主之前有一次,无意之间,也不知道做了什么删除文件里面内容的操作,配置好静态IP之后上不了外网。翻阅个各种资料都是没有找到问题。最后发现问题在于配置的虚拟机网卡文件的网关打错了。

这里我把GATEWAY打错了。。。大家注意一下,试了很多种方法还是不行的话,肯定是你配置的内容里面出问题了。linux没有那么难!!!

这里就不吹了,既然说到这里,就总结一下默认网关的添加和DNS服务的添加。

默认网关的添加

查看默认路由

[root@centos7 ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 ens33
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 ens33

这里如果你也跟我一样没有0.0.0.0的这条的话,应该也是没有配置默认网关。。如果你缺失第一个路由,是肯定无法ping通外网的

正确的应该是这样的

[root@centos7 ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 ens33
169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 ens33
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 ens33

1、首先DNS可能被误删了,需要添加(nameserver=8.8.8.8是谷歌提供的免费的DNS服务,还有一个免费的备用的nameserver=8.8.4.4)

# vim /etc/resolv.conf
nameserver 114.114.114.114

2、添加路由

# route add default gw 192.168.1.1

这里的网关是怎么来的就不多说了,查看下本机的网关

3、此时可以选择重启网卡

ifdown ens33
ifup ens33

或者重启网络服务

systemctl restart network

ping一下百度

[root@centos7 ~]# ping baidu.com
PING baidu.com (123.125.115.110) 56(84) bytes of data.
64 bytes from 123.125.115.110 (123.125.115.110): icmp_seq=1 ttl=45 time=57.8 ms
64 bytes from 123.125.115.110 (123.125.115.110): icmp_seq=2 ttl=45 time=59.5 ms
64 bytes from 123.125.115.110 (123.125.115.110): icmp_seq=3 ttl=45 time=60.5 ms
64 bytes from 123.125.115.110 (123.125.115.110): icmp_seq=4 ttl=45 time=61.0 ms
64 bytes from 123.125.115.110 (123.125.115.110): icmp_seq=5 ttl=45 time=65.0 ms

完成!

但是!!!!这里的route add default gw 是添加的临时网关,可能关机,挂起虚拟机或者时间稍微长一点就没有用了。

所以这里我们要进行永久的设置。

配置永久的默认网关

1、在网卡配置文件中设置

vim  /etc/sysconfig/network-scripts/ifcfg-ens33  # 目录肯定是一样的,但是网卡文件因网卡名不一样会变动

 TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
IPADDR="192.168.1.133"
NETMASK="255.255.255.0"
GATEWAY="192.168.1.1"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="55accfd8-d5f2-46eb-a68d-bc78985101c8"
DEVICE="ens33"
ONBOOT="yes"

ifcfg-ens33

此时重启网络或者网卡就好了

systemctl restart network

第一种方法亲自测试有效!!后面的没有测试,摘录自网友博客

2、在网卡文件目录里面创建一个route-ens33(网卡号)

[root@centos7 ~]# cd /etc/sysconfig/network-scripts/
[root@centos7 network-scripts]# touch route-ens33
[root@centos7 network-scripts]# vim route-ens33
192.168.10.0/ via 192.168.1.1
192.168.1.0/ via 192.168.1.1

然后重启网络或者网卡

3、在网卡我嗯见目录创建一个static-routes文件

vi  /etc/sysconfig/network-scripts/static-routes (如果没有,就新建文件)
10.0.0.0/ via .*.*.  gw 10.0.0.254  dev ens160

重启网卡就OK了。

只是后面的两种,我没有测试,刚开始是GETEWAY怎么测都是错的。所以。。。hm。。。

添加DNS

这个就不再废话讲什么临时的DNS。。直接讲永久添加了。

还是网卡文件,既然大家用到linux的东西,还是建议大家记一下网卡路径,真的还是很重要的一个子路径。

/etc/sysconfig/network-scripts/ifcfg-ens33

打开文件直接添加下面内容到末尾

DNS1=8.8.8.8
DNS2=114.114.114.114

然后呢,还是重启网卡。。

2、脚本添加

nmcli con mod * ipv4.dns "dns1 dns2"
service network restart

重启网卡。。

3、传统修改

手动修改/etc/resolv.conf

nameserver 114.114.114.114
nameserver 8.8.8.8

修改 /etc/NetworkManager/NetworkManager.conf 文件,在main部分添加 “dns=none” 选项:

[main]
plugins=ifcfg-rh
dns=none

重启。

Linux 踩过的坑系列-01的更多相关文章

  1. ABP框架踩过的坑系列6

    ABP框架踩过的坑系列6 应是无事.齐侯方才的确到了吴纠庭院https://www.mixcloud.com/ltTFvU888smi8jS/几日行军劳顿其实齐侯本应该睡下了https://www.m ...

  2. 使用ABP框架踩过的坑系列1

        企业级(例如ERP)应用, 一遍一遍的在重复:认证.验证.异常处理.日志.国际化和本地化.数据库连接管理.配置管理. 审计记录等,同时.NET有很多最佳实践:分层.模块化.DDD领域驱动.DI ...

  3. 使用ABP框架踩过的坑系列5

    DDD领域驱动开发,实际是为复杂的业务场景而生的,为了让开发人员专注于业务,而操作系统.数据库.网络之类的技术细节,必须要持久透明化:实际就是数据库系统DBMS的ORM抽象,目标就是业务不需要考虑数据 ...

  4. 使用ABP框架踩过的坑系列3

    从架构角度来讲,ApplicationService究竟应该如何定位,一种说法是直接对应用例UseCase, 也就是直接对应UI, 这个UI是广义的,不仅仅是浏览器的页面,也包括API调用.还是从我曾 ...

  5. 使用ABP框架踩过的坑系列4

    数据库连接和事务管理,是数据库应用中的最重要概念之一.做过的人,都会头疼:何时Open一个连接?何时Start一个事务?何时Dispose这个连接?... ABP框架试图用一个叫做UnitOfWork ...

  6. 踩过的坑系列之InputStream.read(byte[])方法

    项目之前都是好好的,最近现场那边出现一个问题,报错不是合法的json字符串,这个json字符串是通过http请求访问获得的. 通过直接在浏览器上直接访问http这个请求,发现返回的json也是完全正确 ...

  7. 使用ABP框架踩过的坑系列2

    ABP中有很多惯例,如果使用得当,可以事半功倍,如果使用不当,也会有很大的麻烦,是否适当其实还是要看Need需求 ASP.NET Boilerplate (ABP) is an open source ...

  8. MySQL填坑系列--Linux平台下MySQL区分大小写问题

    大家好,我是软件大盗(道),下面开始我们的<MySQL填坑系列>. 笔者最近又在MySQL的边缘试探,然后,试探着,试探着就报错了. 书接上文,系统连接数据库时报错:找不到DB_TIMIN ...

  9. jmeter踩坑系列

    1.踩坑系列一: 抓包出来有host的字段,放到jmeter里面一起请求就报错了,去掉就请求正常了 1.踩坑系列二: 从花瓶复制过去 的values 前面有空格,肉眼看起来没有

随机推荐

  1. Java线程锁,synchronized、wait、notify详解

    (原) JAVA多线程这一块有点绕,特别是对于锁,对锁机制理解不清的话,程序出现了问题也很难找到原因,在此记录一下线程的执行以及各种锁. 1.JAVA中,每个对象有且只有一把锁(lock),也叫监视器 ...

  2. 设计模式之Template Method模式

    作用:将具体的处理交给子类 什么是Template Method模式? Template Method模式是指带有模板功能的模式,组成模板的方法被定义在父类中,且这些方法为抽象方法.子类去实现父类中的 ...

  3. 3-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案安全篇(购买域名,域名绑定IP)

    2-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案安全篇(监听Wi-Fi和APP的数据) 因为安全连接是和域名绑在一块的,所以需要申请域名 有没有不知道域名是什么的, ...

  4. 私有云方案——利用阿里云云解析实现DDNS

            各位都是程序员,工作中是不是遇到个类似情况.在家里研究的一些开源代码或写的一些demo或试验代码,在工作中正好需要参考一下,但是在家里的电脑上.           虽然这些都可以用云 ...

  5. Mysql数据的增删改查

    一 介绍 MySQL数据操作: DML 在MySQL管理软件中,可以通过SQL语句中的DML语言来实现数据的操作,包括 使用INSERT实现数据的插入 UPDATE实现数据的更新 使用DELETE实现 ...

  6. ORM框架SQLAlchemy

    SQLAlchemy orm英文全称object relational mapping,就是对象映射关系程序,简单来说就是类似python这种面向对象的程序来说一切皆对象,但是使用的数据库却都是关系型 ...

  7. react混合开发APP,资源分享

    第一个: 链接:https://pan.baidu.com/s/1KdIs8EUcB9YTuK9VW1dC7g 密码:b68m 第二个: 链接:https://pan.baidu.com/s/1mi7 ...

  8. CentOS 7 rpm -i 时 警告warning: /var/tmp/rpm-tmp.z7O820: Header V4 RSA/SHA512 Signature, key ID a14fe591: NOKEY 解决方法

    这是由于yum安装了旧版本的GPG keys造成的,解决办法就是 运行下面命令即可 # rpm --import /etc/pki/rpm-gpg/RPM* 查询已安装的rpm源 # rpm -qa ...

  9. Error updating database. Cause: java.sql.SQLException: Access denied for user '${username}'@'localhost' (using password: YES)

    导入别人的项目,出现一个错误,经过排查,是db.properties配置文件中的用户名与Mybatis-conf.xml配置文件中调用的用户名不一致所导致的 (db.properties中用的是nam ...

  10. ABP中的拦截器之ValidationInterceptor(下)

    在上篇我分析了整个ABP中ValitationInterceptor的整个过程,就其中涉及到的Validator过程没有详细的论述,这篇文章就这个过程进行详细的论述,另外任何一个重要的特性如何应用是最 ...