face

什么是SMB协议?

这个协议的内容十分的繁冗复杂,具有非常多样化的功能,其作用和原理我就不在这里赘述了,尽管SMBchat只用到其中的星星点点,但配置过程还是很长,我会尽量的将SMBchat的部署和使用过程简化,并放在这篇文章中。

SMB(Server Message Block)通信协议是微软(Microsoft)和英特尔(Intel)在1987年制定的协议,主要是作为Microsoft网络的通讯协议。

SMB 是在会话层(session layer)和表示层(presentation layer)以及小部分应用层(application layer)的协议。

SMB使用了NetBIOS的应用程序接口 (Application Program Interface,简称API),一般端口使用为139,445。

另外,它是一个开放性的协议,允许了协议扩展——使得它变得更大而且复杂;大约有65个最上层的作业,而每个作业都超过120个函数,甚至Windows NT也没有全部支持到。

最近微软又把 SMB 改名为 CIFS(CommonInternet File System),并且加入了许多新的特色。

SMB-百度百科


SMBchat的由来

Paper的小故事时间(雾)

时间推至怀仁18年的新高一,两个新人正对着FTP指指点点。

“你配置FTP的速度还能再快点吗?”刚下课的小王失落的对小明说。

“三分半,不能再少了。”

“可是每次我都觉得,这已经半节课过去了。”

片段一

一个星期过去了,又是那节信息技术课。

“你这FTP服务端不行啊!”刚刚掉线的小明对小王说。

“已经可以在一分钟之内开启共享了,还有什么不足的吗?”

“老是要掉线,传输速度也慢,莫名其妙会弹出用户无法登录。”

“那你有更好的解决办法吗?”疑惑的小王对小明说。

“SMB共享文件吧,虽然我不知道怎么用。”

片段二

又是一个星期过去了,但不是那节信息课

“这SMB共享有点强啊!”

“怎么了?”

“根据我的使用情况来看,速度快,稳定性强,但是,最重要的是可以直接编辑上面的文件!”

“正常。”

“我感觉我可以写个聊天软件”

片段三

谁也不知道为啥要在学校上信息技术课的时候共享文件。

好吧,话不多说,其实就是为了能在课上可以联系到彼此还有玩游戏才搞的这么一个共享,我记得当时我们是在目录中通过修改文件名的办法来进行交谈的,在以后的几节课中,我利用闲暇时光,制作了这么一个软件的早期版本。

然后一直到了高二,我与小明不再是一个班了,但是我又认识了一位有点底子的人,于是,我又重新开始了SMBchat的制作,并推广到了全班(老师:MMP),最终有了现在这么一个版本。


SMBchat使用效果

传统的UI界面

face

分离式UI界面

face

功能丰富的菜单

face


使用SMBchat前需注意的事项

系统:Windows 2000 ~ Windows 10 (在更新的版本中,对系统的支持将从Windows 7开始)

内存:最低256MB

硬盘空间:最低1MB

网络:需要开放443端口,并拥有IP地址

其他:需知道主机的名称

❗ 警告!

受最近永恒之蓝等病毒的影响,部分运营商已关闭外网的445端口,您无法使用SMBchat在外网交谈,但一定程度上保护了你的电脑免受这类病毒的侵扰,尽管如此,当你不使用SMBchat时,请尽量确保你的445端口在不使用SMB时不是打开状态


下载SMBchat

目前只提供了GitHub的下载方式,点击下面的链接,即可访问SMBchat的库。

https://github.com/AyalaKaguya/SMBchat


如何配置SMBchat

这么多好处又该如何使用呢?

服务器

在这里,我们将以win10为例,配置SMBchat,如果其他系统(比如Windows 7以及Windows XP)中没有对应的属性设置,您可以直接跳过,这对于你的系统不是必须的。(在Windows vista之后需要配置用户权限,而之前的大部分桌面版本并不需要。)

首先我们需要在作为服务器的电脑上建立一个文件夹,为了方便查找,我将其取名为“SMB”

face

然后我们右键这个文件夹,点击“属性”。

face

然后切换到“共享”选项卡,您会发现:

face

我们点开“高级共享”(需要管理员权限)

face

然后在弹出的窗口中:

face

然后连续点击两个确定,返回“SMB 属性”,然后我们点击下面的“网络和共享中心”

face

face

face

然后,我们就可以保存更改了。接着,我们进入“安全” 选项卡 :

face

face

face

face

然后点确定,自此,我们就配置完成了。

❗ 再次警告!

在你不使用SMBchat时,请不要把你的文件夹共享打开!

如何获得服务器地址?

首先,我们退回桌面。

face

如果我们的计算机名是“DESKTOP-PAPERMO”,那么我们的聊天服务器地址就应该是“\DESKTOP-PAPERMO\SMB”,即“\你的计算机名\你设置的文件夹名”

会玩的朋友可以在文件资源管理器里打开这个地址,来体验SMB共享文件的便捷。

客户端

打开SMBchat,我们即将试验上面开服务器得到的地址“ \DESKTOP-PAPERMO\SMB ”

face

然后按下Enter,我们就可以享受SMBchat了!

face


SMBchat的指令表

在成功登录服务器后的任何时候,你可以使用以下指令来优化你的聊天环境。

命令名作用
/logout退出登录,并切换下一个用户
/win启用分离式窗口,但无法使用部分功能
/host跟换新的聊天服务器地址
/reset重置当前的SMBchat副本
/help显示帮助文档
/exit退出SMBchat,并向其他人广播
/cls清空当前会话,并保存
/history调用已经归档的内容
/del删除归档的内容

一些更新

尽管SMBchat已经更新完善,但是仍然存在着许多的问题,欢迎你提出改进的意见和建议,我会在以后的日程中尽力对其进行修补的。

在文章的图片中有小伙伴可能就发现了,“哎,纸莫你的语文没学好吧!”,但其实则不然,这些语言文字的错误早在2018年的暑假里我就已经更正了,至于为什么图片中存在错误,是因为我在写这篇文章时用了一个老版本,这下误解因该解开了吧(满头大汗)。


当遇到故障时

当遇到故障时,比如SMBchat抽风,或者无法访问某台服务器,请不要惊慌,这里提供了一些排查的措施:

  • 是否您的SMB权限已经给足?
  • 是否您的程序没用管理员权限打开?
  • 您SMB共享的位置是不是磁盘根目录?
  • 您是否关掉了密码保护共享?
  • 您是否输入了正确的地址

如果程序抽风,您可以删除同目录下的sti.bat来解决这一问题