使用场景:

  • 一般家庭设备都是通过路由器中转连上互联网的,而且运营商给家庭宽带分配的IP地址也是动态的、随时可能变动的。所以当程序员们离开家之后,是很难直接和家里的设备进行交互的。但是通过TPLINK路由器提供的端口转发和DDNS功能,我们可以很轻松的做到随时随地连到家里的设备。既然家庭设备可以如此,那么实验室的Beaglebone是不是也可以远程登录呢???

所需工具:

  • Beaglebone black板子
  • TP-LINK路由器
  • 手机或者电脑ssh
  • 一根网线

步骤总览:

  • 手机或者电脑上安装ssh或者putty软件
  • 板子通过网线直接连接到路由器的LAN口
  • 下载花生壳,注册账号获得免费DDNS域名
  • 配置路由器
  • 通过手机流量或者连接手机热点的电脑远程ssh路由器下的板子

详细步骤:

  • 手机上推荐一款ssh软件----------juicessh,电脑上的话putty或者Xshell都可以
  • 将网线插入板子,此时板子被分配一个IP地址,可以登陆路由器查看,如下图所示,也可以先将手机或电脑连接该路由器的WIFI或网口,此时板子和电脑处于同一个路由器下,可以直接ssh登录,登录之后通过ifconfig即可查看板子的IP地址
  • 开通好板子的ssh功能之后,最好再把板子的MAC地址与路由器分配的ip进行绑定,方便之后的端口转发

  • 直接官网下载花生壳,使用手机号注册个账号,然后会获得一个免费的域名

关键一步:

还是以我的路由器为例子,进入路由器管理网页,点击高级用户中的虚拟服务器,然后点击添加,外部端口填你希望从外网通过哪个端口访问,内部端口是你需要访问设备的ssh的端口,默认是22,ip地址是上面板子在路由器下的IP地址,协议选ALL就好,常用服务器不用选,然后点击保存就好

  • 选择花生壳,因为TPlink自身提供的DDNS服务,然后有花生壳账号的就用自己账号,没有的就注册一个,连接成功后,域名信息那里会显示你的域名

大功告成,现在可以通过外网的设备,我使用连接手机热点的笔记本ssh板子,连接成功,实现了


如果狗板不是用网线连接到路由器的LAN口的话,而是使用无线网卡连接路由器的WI-FI,配合一块5V充电锂电池可以实现远程在线无线控制,此时上述配置固定IP的方法不可用,应该需要另外配置板子的IP为静态IP

  • vim /etc/networ/interfac

PS:有什么理解错误的或者名词表达错误的,还请见谅。。。参考链接:https://segmentfault.com/a/1190000012365747

顺便附上电脑和手机上的ssh工具:链接:https://pan.baidu.com/share/init?surl=0F0y9g6yCjAssbwm718KOA 提取码:wjlp


更改Linux终端中用户名的显示颜色

  • vim ~/.bashrc
  • PS1='${debian_chroot:+($debian_chroot)}\[\033[01;33;1m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
  • source .bashrc

配置vim

  • vim ~/.vimrc
  1. set nocompatible
  2. set number
  3. syntax on
  4. color evening
  5. set history=1000
  6. set autoindent
  7. set smartindent
  8. set tabstop=4
  9. set shiftwidth=4
  10. set showmatch
  11. set guioptions-=T
  12. set vb t_vb=
  13. set ruler
  14. set nohls
  15. set incsearch
  16. set nobackup
  17. set backup

配置网络

  • 通过USB共享主机网络
  1. route add default gw 192.168.7.1
  2. vim /etc/resolv.conf
  3. 添加

    nameserver 127.0.0.1

    nameserver 8.8.8.8

    nameserver 192.168.1.1

  4. 如果还是ping不通,尝试关闭主机防火墙
  5. 仍然不行,修改一下文件/etc/network/interfaces添加下面这段信息:dns-nameservers  8.8.8.8
  6. 成功ping通之后,重启之后又回到了默认状态,想要开机自动配置,编辑~/.profile,在文件末尾加上如下内容:

/sbin/route add default gw 192.168.7.1

/usr/sbin/ntpdate -b -s -u ie.pool.ntp.org

  • 通过无线网联网
  1. 插上无线网卡usb
  2. lsusb    #显示启用的usb模块如果显示wireless Adapter网卡是支持的,并且已挂载
  3. sudo apt-get install wireless-tools     #安装无线上网工具
  4. sudo ifconfig -a #会显示wlan0,但是没有ip地址
  5. sudo ifconfig wlan0 up    #启用wlan0节点
  6. sudo iwlist wlan0 scan</span>    #扫描wlan节点(可不用操作)
  7. sudo vim /etc/network/interfaces    #找到wpa-ssid和wpa-psk,取消wlan0部分所有的注释,并填入wifi名称密码
  8. sudo ifup wlan0        #此时wlan0会有ip

烧写系统

  • 系统镜像的准备
  1. 需要考虑到是否适合板子的版本,特别主要镜像名字后面到底是4gb还是2gb
  2. 版本是eMMC还是非eMMC
  • 烧写SD卡
  1. 下载之后的镜像通常是tar.xz的,windows下直接解压即可得到img文件
  2. Windows使用Win32DiskImager烧写,需要借助sd转usb适配器
  • 烧写镜像
  1. 先验证一下SD卡上的系统镜像是好用的。先把SD卡插入到板子的SD卡插槽上,然后上电。
  2. 用SSH的方式登陆到板子上(192.168.7.2),此时是自动从SD卡启动
  3. 对于非eMMC的系统(eMMC的板子无需这样操作),需要修改使用vim修改/boot/uEnv.txt文件,定位到下面的位置,将cmdline前面的注释#去掉,然后保存

最后操作

  • ##enable BBB: eMMC Flasher:
  • #cmdline=init=/opt/scripts/tools/eMMC/init-eMMC-flasher-v3.sh
    1. 给板子断电,按住BOOT按键(注意不是reset按键也不是power按键),然后给板子上电,等LED等开始有反应的时候等大约15s,就可以把BOOT键松开了,如果步骤没有出错,很快这四个LED等一定应该是流水灯的形式不停的跑(emmc的板子是频率明显加快的,并不是流水灯的形式),才证明是在烧写(另一种判断的方式是:烧写的时候电脑上是不会显示出USB的,意思就是此时无法登录系统,之前我用2gb的系统刷4gb的板子时候,几个灯是同时闪烁,并且电脑上会有usb连接,用ssh可以连接板子,这种情况系统是无法烧写成功的)
    2. 不用等30分钟,大概6~10分钟分钟,这个时候板子的LED等会全亮
    3. 拔掉SD卡,重启板子
    4. 用SSH登陆到板子上,使用uname -a,确定一下烧写版本判断是否成功
    5. 重装系统之后,使用16板子的系统板子无法通过usb连接电脑获得地址(192.168.7.2),安装板子里面的驱动也是安装失败.解决方法:找到一块14系统的旧板子,自带boot的那种,安装里面的驱动,然后就可以连接了,也能活得ip地址
    6. 一切完成之后,记得将上面的注释再加上去,要不然插上sd卡,板子可能就自动烧写了,原本板子里面的配置就全都GG了

不同路由器下远程ssh登录Beaglebone系统(通过路由器端口转发,配合花生壳的DDNS功能)的更多相关文章

  1. linux ubuntu 远程ssh登录

    当我们有一个Linux系统的时候,可能用到远程ssh登录,当你是没有界面的系统的时候也会用到,远程操作起来比较方便. 首先我们的电脑默认是不安装ssh的,就是无法通过ssh远程连接,所以要安装shh. ...

  2. CentOS生产机器禁止ROOT远程SSH登录

    方法一 很多站长拥有linux主机,不管是虚拟机还是实体机,一般我们远程连接的时候,都是用的ssh(SecureShell建立在应用层和传输层基础上的安全协议). 它默认的端口22,默认使用root也 ...

  3. CENTOS如何禁用ROOT本地或远程SSH登录

    下面详细描述如何禁止root登录. 禁止root本地登录 禁止root远程ssh登录 禁止root本地登录 修改/etc/pam.d/login文件增加下面一行   1 auth required p ...

  4. Linux 下使用 ssh 登录局域网其他电脑的方法

    Linux 下使用 ssh 登录局域网其他电脑的方法 首先查看电脑是否安装 ssh 客户端,如果没有执行下面命令安装客户端. sudo apt-get install openssh-client s ...

  5. linux 创建用户 用户组,sudo,禁止root远程ssh登录

    创建用户  useradd hanli 为新用户设置密码(在root下可以为普通用户重置密码)  passwd hanli 创建用户组  groupadd  op 将用户添加到用户组  usermod ...

  6. 烂泥:【解决】Ubuntu下使用SSH连接centos系统很慢

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 这几天在Ubuntu下使用SSH连接centos系统,发现连接很慢.建议一个连接大约需要30s.很是坑爹,如下: 后来查询相关资料,发现这个是Ubunt ...

  7. CentOS禁用root本地或远程ssh登录

    有些特殊的情况我们需要禁止root在本地或远程使用ssh登录,以增加安全性. 禁止root本地登录 修改/etc/pam.d/login文件增加下面一行auth required pam_succee ...

  8. 1.配置桥接,并抓包验证 2.实现免密登录 3.修改登录端口: 22-》2222 4.不允许root用户远程登录 5.创建用户sshuser1,并设置密码,且只允许sshuser1远程ssh登录

    1.配置桥接:  抓包时如果有ens160的ICMP,说明我们的桥接搭建成功通过桥接访问到了ens160(这里忘加图片了) (1)创建一个桥接设备和会话 (2)添加设备和会话到桥接设备上 (3)启动从 ...

  9. ssh命令:隧道代理+本地端口转发+远程端口转发

        0.前言 nc是一个在网络连接两端的好工具,同时也是也个临时的端口转发的好工具.(永久的端口转发用什么?用iptables) ssh也是这方面的好工具,好处是加密可靠可复用在一端操作即可,代价 ...

随机推荐

  1. 使用PgBouncer连接池

    1.pgbouncer 的介绍 pgbouncer是一个针对PostgreSQL数据库的轻量级连接池,任何目标应用都可以把 pgbouncer 当作一个 PostgreSQL/Greenplum 服务 ...

  2. Win8驱动的兼容性问题

    引用注明>> [作者:张佩][原文:www.yiiyee.cn/blog] 最近我发现为Win8开发的驱动程序,有些能安装在Win7上(包括更早系统),有些则不能.那些不能安装的情况很可怕 ...

  3. java8时间类的一些封装

    1.判断平年和闰年 (prolepticYear & 3) == 0 这个条件使用了位运算,与上3在二进制计算下即为:& 00…011.目的是保留最后2位二进制数,然后判断是否最后两位 ...

  4. K - Popular Cows

    来源poj2186 Every cow's dream is to become the most popular cow in the herd. In a herd of N (1 <= N ...

  5. RE:从零开始的莫比乌斯反演

    炫酷反演魔术根本看不懂啊...也就看看PoPoQQQ的ppt了. 这个赛季结束了,一年可以学很多很多东西呢. 因为我是写给自己看的所以写的很垃圾. 公式: 按我的理解,反演就是  x可以表示成y,然后 ...

  6. common lisp的几个基本概念

    S-表达式 quote nil 与 () cons car cdr 真假 predicate 谓词与 t 与 nil null 函数 与 not 函数 if then else and 与 or de ...

  7. 唉,可爱的小朋友---(DFS)

    唉,小朋友是比较麻烦的.在一个幼儿园里,老师要上一节游戏课,有N个小朋友要玩游戏,做游戏时要用小皮球,但是幼儿园里只有M个小皮球,而且有些小朋友不喜欢和一些小朋友在一起玩,而只喜欢和另一些小朋友一起玩 ...

  8. zepto.js的touch模块

     touch库实现了什么和引入背景 touch模块是基于zepto.js的. click事件在移动端上会有 300ms 的延迟,同时因为需要 长按 , 双触击 等富交互,所以我们通常都会引入类似 ze ...

  9. vue里的样式添加之行间样式

    一:行间样式 :和绑定其他dom的属性一样, v-bind:style=          <div v-bind:style={backgroundColor:color}>2</ ...

  10. Exception in thread "main" org.apache.hadoop.security.AccessControlException: Permission denied: user=lenovo, access=WRITE, inode="/user/hadoop/spark/people_savemode_test/_temporary/0":hadoop:supergro

    保存文件时权限被拒绝 曾经踩过的坑: 保存结果到hdfs上没有写的权限 通过修改权限将文件写入到指定的目录下 * * * $HADOOP_HOME/bin/hdfs dfs -chmod 777 /u ...