博客
关于我
xshell连接Ubuntu学习Unix网络编程
阅读量:508 次
发布时间:2019-03-07

本文共 1174 字,大约阅读时间需要 3 分钟。

配置Xshell并编译网络编程源代码

1. 配置Xshell

安装SSH服务器

在Ubuntu中安装OpenSSH服务器,首先需要通过终端输入以下命令:

sudo apt-get install openssh-server

完成后,SSH服务器就可以正常运行。

确保网络连通性

在使用Xshell进行远程连接之前,必须确保主机和虚拟机之间的网络能够正常通信。可以通过以下步骤测试网络状态:

  • 在虚拟机中:
  • ifconfig

    查找其IP地址,并记录下来。

    1. 在PC机中:
      • 打开命令提示符(Win+R输入cmd)。
      • 输入ipconfig查看IP地址。
      1. 在两端交互ping测试,确保双方都能成功与对方建立连接:
      2. ping 
        <对方ip>

        远程登录配置

        如果网络测试通过,说明双方能够互相通信。接下来,可以通过Xshell进行远程登录。

        2. 源代码下载与编译

        下载源代码

        从官方网站或指定的资源链接下载源代码,通常会得到unpv13e.tar.gz文件。

        编译步骤

      3. 首先解压源代码:
      4. tar zxvf unpv13e.tar.gz

        2.进入解压目录并进行配置:

        cd unpv13e./configure
        1. 编译库文件:
        2. cd libmakecd ../libfreemakecd ../libgaimake
          1. 处理头文件:
          2. cd ..sudo vim lib/unp.h

            查找并修改../config.h为config.h。

            1. 安装头文件和库文件:
            2. sudo cp config.h /usr/local/includesudo cp lib/unp.h /usr/local/includesudo cp libunp.a /usr/local/lib

              编译示例

              以intro/daytimetcpcli.c为例:

              cd ./introgcc daytimetcpcli.c -o daytimetcpcli -lunp

              运行测试

              ./daytimetcpcli 127.0.0.1

              常见错误解决

              连接拒绝问题

              如果出现connect error:Connection refused,可能是服务未被正确监听。可以尝试以下方法:

            3. 如果系统已有xinetd安装,可以查看配置文件:

              cd /etc/xinetd.d/
            4. 如果没有安装xinetd,先安装:

              sudo apt-get install xinetd
            5. 配置daytime服务:

              sudo vim daytime

              修改disable后的yes为no,保存退出。

            6. 重启xinetd:

              sudo service xinetd restart
            7. 再次测试:

              ./daytimetcpcli 127.0.0.1
            8. 如果成功,应该会显示日志信息。

              通过以上步骤,应该可以顺利配置Xshell并完成网络编程源代码的编译与测试。

    转载地址:http://tjojz.baihongyu.com/

    你可能感兴趣的文章
    Python:从间隔映射到值
    查看>>
    Python:使用 shell=False 的子进程调用不起作用
    查看>>
    Python:修改 PATH 环境变量的平台无关方式
    查看>>
    Python:假与 0
    查看>>
    Python:函数使用
    查看>>
    Python:函数进阶
    查看>>
    Python:在整数的二进制表示中查找最长的二进制间隙
    查看>>
    Python:如何从二进制转换为 base 64 并返回?
    查看>>
    Python:如何以非阻塞方式读取子进程的标准输出
    查看>>
    Python:如何使用 plotly 制作阴影区域或交替背景颜色?
    查看>>
    Python:如何根据日期时间获取值的计数
    查看>>
    python:如何检测串行 COM 上的设备名称/ID
    查看>>
    Python:如何模拟 datetime.utcnow()?
    查看>>
    Python:如果DataFrames之间的其他值匹配,则对DataFrame中的值求和
    查看>>
    Python:字典思维
    查看>>
    Python:将 HEX 字符串转换为字节
    查看>>
    Python:将列表与范围列表合并
    查看>>
    Python:将列表列表初始化为一定大小,
    查看>>
    Python:带有生成器的给定集合的幂集
    查看>>
    Python:按字符的位置拆分字符串
    查看>>