网络基础:NetBIOS
网络基础小补。
利用 NetBIOS 名称与其他计算机通信
网络中的计算机之间必须知道IP地址后才能相互通信。但对人来说IP难以记忆,NetBIOS计算机名称比较容易记忆。当计算机使用 NetBIOS 名称与其他计算机通信时,必须先通过 NetBIOS名称找到IP地址,然后再通过IP地址通信。由NetBIOS名称找出IP地址的操作被称为NetBIOS名称解析(NetBIOS name resolution)。
NetBIOS名称是什么?
NetBIOS名称是一个长度为16个字符的字符串。MS网络中用到NetBIOS名称的地方有:计算机名,域名,工作组名。
名称示例
NetBIOS 计算机名:nick-os
DNS主机名:nick-os.mydomain.net
计算机全名:加不加域不一样
不加域时:nick-os
加入域后:nick-os.mydomain.net
全域名 (Fully Qualified Domain Name, FQDN) 或 DNS名称。
nick-os.mydomain.net
(没有加入域时,就没有什么 “全域名”和 “DNS名称”)
如何查看当前机器注册的NetBIOS名称:
nbtstat -n
通过NetBIOS名称来解析IP地址
主要有下面三种方式:
1. 查看NetBIOS名称缓存区
我们也可以通过命令来查看当前的NetBIOS名称缓存区:
nbtstat -c
2. 通过广播的方式搜索对方的IP地址(应尽量避免使用这种方式)
3. 直接向WINS服务器查询
NetBIOS节点类型
上面的三种方法都可以解析到IP地址,但究竟会用哪一种呢?
这取决于计算机采用的NetBIOS节点类型(node-type):
B-node: 广播方式
P-node: 直接向WINS服务器查询
M-node: B与P的混合方式(mixed),先广播,若失败,再向WINS服务器查询
H-node: 也是B与P的混合方式(hybird),但是先向WINS服务器查询,若失败,之后才广播
查看 NetBIOS节点类型:
ipconfig /all

采用H节点的WINS客户端,其NetBIOS名称解析的完整顺序为:
1. 检查要查询的计算机名称是不是自己的计算机名称。
2. 检查NetBIOS名称缓存区。
3. 向WINS服务器查询。
4. 发出广播消息。
5. 检查LMHOSTS文件。
6. 检查HOSTS文件或向DNS服务器查询。
LMHOSTS文件和HOSTS文件存放于 “%systemroot%\system32\drivers\etc”目录下。
网络基础:NetBIOS的更多相关文章
- 前端学HTTP之网络基础
× 目录 [1]网络 [2]OSI [3]TCP/IP 前面的话 HTTP协议对于前端工程师是非常重要的.我们在浏览网站时,访问的每一个WEB页面都需要使用HTTP协议实现.如果不了解HTTP协议,就 ...
- 开发人员必读openstack网络基础
云计算中的网络非常复杂,需要对网络的基础理论有一定的认识和了解,转载网上针对openstack中涉及到网络概念的文章 开发人员必读openstack网络基础1:什么是L2.L3 开发人员必读opens ...
- iOS网络基础知识
iOS网络基础知识 1.一次HTTP请求的完整过程 (1)浏览器或应用发起Http请求,请求包含Http请求Http(请求),地址(url),协议(Http1.1)请求为头部 (2)web服务器接收到 ...
- JAVA基础知识之网络编程——-网络基础(Java的http get和post请求,多线程下载)
本文主要介绍java.net下为网络编程提供的一些基础包,InetAddress代表一个IP协议对象,可以用来获取IP地址,Host name之类的信息.URL和URLConnect可以用来访问web ...
- 网络基础知识、ASP.NET 核心知识(1)*
为什么要写网络? 我原本的计划是这样的,连续两天梳理ASP.NET开发的核心知识.说到这呢,有人问了.“不是说好了做ASP.NET笔记吗?为啥要写网络基础知识?是不是傻?” 原因是这样的.作为网站开发 ...
- Java 网络编程(一) 网络基础知识
链接地址:http://www.cnblogs.com/mengdd/archive/2013/03/09/2951826.html 网络基础知识 网络编程的目的:直接或间接地通过网络协议与其他计算机 ...
- Linux网络基础配置
这是看itercast视频的笔记 Linux网络基础配置 以太网连接 在Linux中,以太网接口被命令为:eth0, eth1等, 0,1代表网卡编号 通过lspci命令可以查看网上硬件信息(如果是u ...
- Linux网络服务01——Linux网络基础设置
Linux网络服务01--Linux网络基础设置 一.查看及测试网络 1.使用ifconfig命令查看网络接口 (1)查看活动的网络接口 ifconfig命令 [root@crushlinux ~]# ...
- http(一)web和网络基础
深入学习http不为别的,只为补充底层知识,打好根基,深入了解其他技术,擒贼先擒王,学好九阳神功以后,乾坤大挪移,太极剑就容易了,急于求成,就只能变周芷若.走着...... 来源于:图解HTTP 1. ...
随机推荐
- [WPF实用技巧]如何使WPF的TreeView节点之间有连线
示例代码:TreeViewEx.zip 原文地址:http://www.codeproject.com/Tips/673071/WPF-TreeView-with-WinForms-Style-Fom ...
- 那些VisualStudio隐藏的调试功能
VisualStudio是一个强大的调试工具,里面很多隐藏功能少有人问津,但是在特定场景可以节省你很多时间,本文主要介绍一些VisualStudio调试相关的隐藏功能,欢迎大家补充. 运行到指针(Ru ...
- FusionCharts简单教程(五)-----FusionCharts中的那些特殊符号
在FusionCharts中有些特殊字符,我们需要进行编码操作才能够使用,否则就无法正常显示. 欧元符号 在FusionCharts里显示"€",你需要用 ...
- ehcache2拾遗之cache持久化
问题描述 应用在使用过程中会需要重启等,但是如果ehcache随着应用一起重启,那么刚重启的时候就会出现大量的miss,需要一定的访问量来重建缓存,如果缓存能够持久化,重启之后可以复用将会有助于缓解重 ...
- iOS 获取键盘相关信息
一,在需要的地方添加监听 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(onKeyboardWil ...
- js里cookie操作
原生js操作cookie 创建和存储 cookie 在这个例子中我们要创建一个存储访问者名字的 cookie.当访问者首次访问网站时,他们会被要求填写姓名.名字会存储于 cookie 中.当访问者再次 ...
- _学生选课数据库SQL语句练习题
1. 查询Student表中的所有记录的Sname.Ssex和Class列. select Sname,Ssex,t.sclass from STUDENT t 2. 查询教师所有的单位即不重复的De ...
- 【原创】NIO框架入门(三):iOS与MINA2、Netty4的跨平台UDP双向通信实战
前言 本文将演示一个iOS客户端程序,通过UDP协议与两个典型的NIO框架服务端,实现跨平台双向通信的完整Demo.服务端将分别用MINA2和Netty4进行实现,而通信时服务端你只需选其一就行了.同 ...
- Windows 系统下Git安装图解
简单来说Git是一个免费的.开源的版本控制软件,从功能上讲,跟我们比较熟悉的Subversion(SVN)这类版本控制软件没什么两样.由于工作的需求,需要在WinXP下安装git配合团队完成相应的工作 ...
- JAVA设计模式《二》
上一篇为大家介绍了一下设计模式中的责任链模式,本篇为大家介绍一下关于设计模式中的单例模式与模板方法模式.单例模式的作用在于,保证应用中某个实例有且只有一个,单例模式又被分为:饱汉模式与饿汉模式,两者的 ...