win2000中不插网线,就ping不通本机(100分)

  • 主题发起人 主题发起人 screen
  • 开始时间 开始时间
S

screen

Unregistered / Unconfirmed
GUEST, unregistred user!
win2000下
我写了一个程序,通过IP地址访问数据库。
当数据库和程序都在本机时,如果不插网线,连接数据库就要出错,因为不插网线ping自己都ping不通。
谁知道有什么设置,在不插网线的情况下,也能ping通自己?
 
改用127.0.0.1的IP地址.
 
很奇怪,为什么有的win2000不插网线就可以ping通自己,有的就不行呢?特别是笔记本,好像很常见这个现象。
 
有些100m的网卡不插网线就等于是禁用的。可能是这个原因吧。
 
不插它就不干了,唉
 
同意LeeChange ping 127.0.0.1我就是这样解决的。
 
其实这是可以解决的,你不一定要设置IP地址,除非你要在INTERNET上使用你的程序,如果
是在LAN中,你完全可以设置成主机的主机名,这样在LAN中,你同样可以使用这个程序.
拔掉网线也可以.不过和IP地址一样,主机名在LAN中必须是唯一的.
 
今天又发现一个新现象,有的机子拔掉网线,却可以ping通自己,有的就不行,奇怪,估计是哪里设置么?
 
任何只要装了tpc/ip协议的机器都可以ping 127.0.0.1。我们现在好像讨论的不是这个问题吧。
 
我以前用东芝的本有这种情况,后来为了应付出差自己做了一个水晶头
只有一个头用于插网卡,另一面把 1-3 2-6分别掐在一起,就可以
(利用网卡原理)相当于机连线。

在网络工程师指导下进行。
 
spymaster指的是如何制作一根网线,这个是个标准,没有什么区别的。
 
很明显问题出在网卡的自动禁用上,当未插网线时,Win2K就自动把网卡禁用了。
如果仅从解决调试时的问题的角度出发,那么改用环回地址(127.x.x.x)或采用一些特殊的手段防止网卡被禁用都是可以的。但我个人认为从“产品”从“用户”的角度出发,采用主机名而非IP地址可能移植性更好,这样如果当我们连接的服务器在本机而网线又未插时,会自动得到127.0.0.1,而网线插好时,会自动得到相应配置的IP地址。
当然,这样做可能会引入名称服务问题。但针对大多数简单应用(C/S在同一个IP子网且都配置了NetBEUI协议),他们之间是可以直接根据对方的名字得到对方的IP,毋需DNS。这涉及到了Windows组网问题,必要时再单独讨论吧。而且,我们还可以给用户定制配置的手段(比如在注册表中保存配置),必要时可以设置成IP地址以避免麻烦(用户有时候是很笨的,你要告诉他需要怎么怎么配置网络还不如直接回避掉这个问题)。
另外,如果想从防止网卡被禁用的途径入手,除了制作特殊的水晶头外,还可以改注册表:
在键HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Tcpip/Parameters下增加DWORD DisableDHCPMediaSense=1,重启后即可禁用“网卡自动禁用”特性,但这样做的坏处是,如果你的网络是采用DHCP,当你在不同的DHCP网络之间漫游时,无法自动更新IP地址,丧失了“移动办公”、“即插即用”的乐趣,因为Windows系统无法得知你的网络连接情况已经发生了变化。当然,如果采用固定IP地址分配,没有问题。
 
多人接受答案了。
 
嘿嘿嘿嘿,第一次出手啊……[:D]
 
后退
顶部