
1.用docker虚拟网络 ping host主机。
(1).主机ip为192.168.101.22
(2).能ping通。
2.上周遗留的ping www.baidu.com的问题。
(1).按照教程修改/etc/resolv.conf文件,加两行
nameserver 8.8.8.8 nameserver 114.114.114.114
(2).修改完之后就可以ping通百度了。是DNS解析问题。
3.学习使用tcpdump抓包。阅读文章《linux下如何使用 tcpdump 进行抓包详细教程》,自己尝试用tcmpdump抓包,遇到了很多问题。
4.开放容器端口。
(1)配置DNAT 规则。这一步在make create-nat里已经配置好了。
(2)在 net1 环境中启动一个 Server
(3)外部选一个ip,telnet连一下试试。这一步没做,因为不知道要telnet什么ip。。。。(在Try and failure里详细写)
1)在ping www.baidu.com这个问题的时候,尝试用gedit去修改/etc/resolv.conf文件,结果安装完command后又自动安装可视化界面(gedit是可视化的编辑器)。
已解决:直接用vim修改了,之后就可以ping通了。
2)学习使用tcpdump抓包的时候,等了很久都没有出现抓包出来的数据,以为是抓不到包,非常痛苦。
已解决:经过非常漫长的等待,终于出现了数据,原来是因为抓包得很慢?
3)(未解决)学习使用tcpdump抓包的时候,想抓包目的 IP为我手机的数据查看,用到的命令如下。经过漫长的等待,并没有抓包到任何东西。
sudo tcpdump dst 10.142.248.98
解决中:命令写错了,没有指定网关,应为
sudo tcmdumo -i enp0s9 dst 10.142.248.98
经过漫长的等待,还是没有抓包到东西。
4)(未解决 )按照《手工模拟实现 Docker 容器网络!》中指导的,抓包eth0,可以查看到源 IP 已经被替换成可和外网通信的 eth0 上的 IP 了。
但是我抓包到的却是下图的数据,并没有替换。所以在接下来的"外部选一个ip,比如 10.143.., telnet 连一下 10.162.. 8088 试试,通了!",不知道该连哪个ip地址。。。。。
1)了解SNAT的原理吗?
答:SNAT在路由器后(PSOTROUTING)将内网的ip地址修改为外网网卡的ip地址,应用场景为共享内部主机上网,局域网访问互联网。目标地址不变,重新改写源地址,并在本机建立NAT表项,当数据返回时,根据NAT表将目的地址数据改写为数据发送出去时候的源地址,并发送给主机。源代码中用到的为
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 ! -o br0 -j MASQUERADE iptables -t nat -A PREROUTING ! -i br0 -p tcp -m tcp --dport 8088 -j DNAT --to-destination 192.168.0.2:80
其中192.168.0.0/24为内部网段,这里的MASQUERADE为地址伪装,是snat中的一种特例,可以实现自动化的snat。
2)10.119.17.178 是谁的IP,host 又能够ping 通吗?
答:是我手机的ip,当时拿来做测试的。host可以ping通。本地宿主机的ip地址是192.168.101.22,可以ping通.
3)关于ping www.baidu.com报错的问题
答:确认了是域名解析错误的问题,用vim修改了/etc/resolv.conf文件之后,可以ping通了。
4)能说说你在什么项目中用到了定时器吗?
答:之前有用unity做过一个卡牌游戏,里面用到了倒计时定时器,但是忘记有没有用过hook了。
解答:
1.抓包的时候ssh登陆彭老师的服务器,然后输入命令,抓包用彭老师服务器的ip地址。
2.文章里指的虚拟网络为内网,也就是ubuntu里的netns,也就是我自己设置的。
ip netns exec net1 ip addr add 192.168.0.2/24 dev veth1 # IP
外网是,
3.测试的时候,可以给ubuntu的enps0再赋一个ip地址,
4.考虑东校区工程实训中心机房的环境,机房一台交换机,10台电脑,主机ip 分别为192.168.1.1 到192.168.1.10, 组成网络net0
ip为192.168.1.1的主机(记为host1)运行Ubuntu *** 作系统,按照飞哥的方式,在host 1 内新建net ns (记为 net1),net1 有网卡veth0,设置ip 地址为10.0.0.2
net0 就是net1 的外网。
“外部选一个ip,telnet连一下试试”的意思是,比如从 ip为192.168.1.10的主机(记为host10)telnet 连接 192.168.1.1:8081,能联通就表示成功的 把虚拟网络内的服务,提供给外部网络使用
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)