zoukankan      html  css  js  c++  java
  • 不能ping通主机名

    https://www.linuxidc.com/Linux/2017-03/142253.htm

    sudo apt-get install winbind , 
    sudo apt-get install libnss-winbind libpam-winbind

    最近装了两台Linux虚拟机分别CentOS7和Ubuntu 14.04,都装了samba服务,文件共享都正常,虚拟机上互联网也正常,能以ping 通局域网的ip,却都ping不通主机名,其他电脑(Windows/Linux)都能ping 通这两台虚拟机的主机名。

    最终找到原因:没有安装winbind,也没有配置/etc/nsswitch.conf

    下面分别说明CentOS7和Ubuntu 14.04/16.04下的步骤。

    CentOS 7

    安装windbind

    sudo yum install samba-winbind-clients

    修改/etc/nsswitch.conf

    sudo vi /etc/nsswitch.conf

    修改hosts,如下图加上wins 
    这里写图片描述

    修改/etc/samba/smb.conf

    sudo vi /etc/samba/smb.conf

    这里写图片描述
    CentOS7安装的是samba4,在samba4中 security的share 和 server 选项已被弃用, 
    必须使用user,并加上 map to guest = bad user, 
    否则会导致,其他主机无法通过主机名访问本机 
    并且在ping 其他主机时,ping会警告:

    WARNING: Ignoring invalid value ‘share’ for parameter ‘security’

    Ubuntu 14.04

    安装windbind

    sudo apt-get install winbind

    修改hosts,如下图加上wins

    sudo vi /etc/nsswitch.conf

    这里写图片描述

    再次ping主机名,成功。 
    这里写图片描述

    如果其他主机不能ping通本机主机名,请检查是否安装了防火墙,以及防火墙是否开启,以及防火墙规则中是开启了相关端口

    sudo ufw status numbered // 检查防火墙状态(显示规则编号) 
    sudo ufw allow samba // 允许所有的外部IP访问本机的samba端口 
    sudo ufw allow ssh // 允许所有的外部IP访问本机的samba端口(22)

    下面是我的ubuntu14虚拟机上防火墙的配置 
    这里写图片描述

    Ubuntu 16.04

    Ubuntu 14.04安装winbind时还会自动安装libnss-winbind,libpam-winbind,libwbclient0,如下图: 

    Ubuntu/CentOS7解决可以ping ip却ping不通主机名

    但是在Ubuntu 16.04下,安装winbind好像不会自动安装上面的组件,所以安装winbind后如果还是不能ping 主机名,还要手工安装libnss-winbind libpam-winbind

    sudo apt-get install winbind , 
    sudo apt-get install libnss-winbind libpam-winbind

    其他操作与Ubuntu 14.04下相同。

  • 相关阅读:
    vue 解决 打包完iE下空白
    多层josn数据 修改
    vue 初始化data中的数据
    图片查看器(缩放 拖动)
    js 懒加载
    css flex 兼容ios android--商品展示 添加购物车
    领域驱动架构(DDD)建模
    知乎复制文本
    Nlog配置文件
    未能加载文件或程序集“xxx”或它的某一个依赖项。生成此程序集的运行时比当前加载的运行时新,无法加载此程序集
  • 原文地址:https://www.cnblogs.com/leaven/p/9809677.html
Copyright © 2011-2022 走看看