我已经使用 this link在ubuntu服务器12.04中安装了LXC.它已成功安装,我可以使用ubutu / ubuntu作为用户名和密码登录.然后我尝试为LXC容器设置网络.

我在/ etc / network / interface中更改为

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
        address 125.67.43.100
        netmask 255.255.255.0
        broadcast 178.33.40.255
        gateway 125.67.43.1

/ var / lib / lxc / mycontainer / config的内容是:

lxc.utsname = mycontainer
lxc.mount = /var/lib/lxc/test/fstab
lxc.rootfs = /var/lib/lxc/test/rootfs


lxc.network.type = veth
lxc.network.flags = up
lxc.network.link = br0
lxc.network.name = eth0
lxc.network.veth.pair = vethmycontainer
lxc.network.ipv4 = 125.67.43.102
lxc.network.hwaddr= 02:00:00:86:5b:11

lxc.devttydir = lxc
lxc.tty = 4
lxc.pts = 1024
lxc.arch = amd64
lxc.cap.drop = sys_module mac_admin mac_override
lxc.pivotdir = lxc_putold

容器等/网络/接口

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
        address 125.67.43.102
        netmask 255.255.255.0
        broadcast 178.33.40.255
        gateway 125.67.43.1

这就是我的配置

-------------        -----------         -----------   
| LXC       | -----> | Host OS | ------> | Gateway |
| Container |        | Ubuntu  |         |         | 
-------------        -----------         ----------- 
eth0 125.67.43.102   br0 <-> eth0        NAT GW:        
gw 125.67.43.1       br0 125.67.43.100   125.67.43.1    
                     gw 125.67.43.1

Ping 125.67.43.100   ping 125.67.43.1
ok                   OK
Ping 125.67.43.1     ping 125.67.43.102
FAIL                 OK

LXC容器不知道外面的主机,知道我错在哪里吗?

附加信息

user@host$cat /proc/sys/net/ipv4/ip_forward is 1

我添加了Nat规则

ip_tables -t nat -A POSTROUTING -s 125.67.43.102 -o eth0 -j MASQUERADE

注意:我上面使用的IP不是原创的

也许这个链接会回答你的问题:
https://wiki.debian.org/LXC/SimpleBridge

看起来你应该在主机上配置br0而不是eth0(例子中的第一个代码块).

不过我只是在猜测!

您的广播地址与网络不匹配,我将在上面的示例中使用125.67.43.255.

ubuntu – 使用公共IP的LXC网络的更多相关文章

  1. Red Hat / CentOS EL6上的Linux容器(LXC) – lxc-create与libvirt?

    ,RedHat将LXC描述为技术预览版和suggestsusinglibvirttomanagecreateandmanagecontainers.然而,Oracleadvocatesatotallydifferentcontainerizationtechnique在其坚不可摧的Linux中.在libvirt方法中似乎缺少一些功能,但我最初使用lxc-*命令的方法是一个手动过程…如果libvirt最终丢弃了libvirt-lxc并且只提供了systemd-nspawn并且定义了systemdslice的

  2. 在ubuntu上运行linux容器(lxc)以隔离Web服务器进程(ruby / thin)

    人们为容器设置静态桥接IP并且Nginx指向它吗?如何确保在容器中运行的Web服务器只能由外部主机访问?

  3. ubuntu – 为什么要使用lxc而不是chroot?

    一个ubuntu服务器在不同的域上托管3个应用程序.每个应用都有自己的开发人员.应用程序开发人员属于linux“sftp”组.chroot允许每个app开发者使用密码sftp访问.在sshd_config中我们关注的是一个应用程序中的编程漏洞导致其他2个应用程序出现问题.我们应该使用lxc容器而不是chroot吗?lxc容器的更改是否对应用程序开发人员透明?

  4. LXC容器无法启动

    我的CentOSLXC容器在Ubuntu14.10机器上不再启动了.我认为重启后问题就开始了,但我不确定.在yum更新之后,当init脚本被替换为不支持LXC的库存脚本时,我遇到了类似的问题.他们试图启动udev等…

  5. 如何自动启动无特权的lxc容器?

    我建议在Ubuntu’scron中使用方便的@reboot别名来运行lxc-autostart.作为拥有非特权容器的用户,运行crontab-e并添加以下行:@rebootlxc-autostart

  6. Ubuntu LXC 14.04错误

    >我怎样才能解决这个问题?

  7. ubuntu – 使用公共IP的LXC网络

    您的广播地址与网络不匹配,我将在上面的示例中使用125.67.43.255.

  8. ubuntu – 将所有LXC节点APT缓存链接到主机的APT缓存

    我有许多LXC容器,它们都有自己独立的APT缓存.我想将这些链接到主机APT缓存在:根据我的记忆,从chroot监狱中走出来是一个巨大的禁忌,所以我想知道其他一些干净的选择是什么.一个解决方案我想到了什么只是让主机上的cron作业与来宾容器同步,但我想知道是否有任何方法可以处理这个而无需安排同步?符号链接会很方便,但它是一个巨大的安全漏洞,对吧?

  9. ubuntu-12.04 – Ubuntu上的LXC和Saltstack minion_id配置

    我正在使用LXC作为测试SaltStack脚本的实验室平台.该实验室由5个Ubuntu12.04LTS容器组成,我通过克隆预先安装了salt-minion的模板容器创建.创建模板容器并安装salt-minion后,模板将根据主机名获取其Saltminion_id.如果我lxc克隆此模板,所有克隆都将具有该模板的minion_id,但我希望克隆使minion_id与其主机名匹配.有没有办法让这个用bash编写脚本,还是我应该采取另一条路径来达到同样的效果?

  10. 使用Ubuntu 14.04主机在Centos7 LXC容器上启用SELinux

    我只是准备放弃并创建一个CentOS7主机来运行我的CentOS7容器,但我真的希望没有必要.Selinux需要在物理主机上运行,因为Selinux在内核端运行,而容器与物理主机共享内核.Container是在其他命名空间中运行的常规进程

随机推荐

  1. crontab发送一个月份的电子邮件

    ubuntu14.04邮件服务器:Postfixroot收到来自crontab的十几封电子邮件.这些邮件包含PHP警告.>我已经解决了这些警告的原因.>我已修复每个cronjobs不发送电子邮件(输出发送到>/dev/null2>&1)>我删除了之前的所有电子邮件/var/mail/root/var/spool/mail/root但我仍然每小时收到十几封电子邮件.这些电子邮件来自cronjobs,

  2. 模拟两个ubuntu服务器计算机之间的慢速连接

    我想模拟以下场景:假设我有4台ubuntu服务器机器A,B,C和D.我想在机器A和机器C之间减少20%的网络带宽,在A和B之间减少10%.使用网络模拟/限制工具来做到这一点?

  3. ubuntu-12.04 – 如何在ubuntu 12.04中卸载从源安装的redis?

    我从源代码在Ubuntu12.04上安装了redis-server.但在某些时候它无法完全安装,最后一次makeinstallcmd失败.然后我刚刚通过apt包安装.现在我很困惑哪个安装正在运行哪个conf文件?实际上我想卸载/删除通过源安装的所有内容,只是想安装一个包.转到源代码树并尝试以下命令:如果这不起作用,您可以列出软件自行安装所需的步骤:

  4. ubuntu – “apt-get source”无法找到包但“apt-get install”和“apt-get cache”可以找到它

    我正在尝试下载软件包的源代码,但是当我运行时它无法找到.但是当我运行apt-cache搜索squid3时,它会找到它.它也适用于apt-getinstallsquid3.我使用的是Ubuntu11.04服务器,这是我的/etc/apt/sources.list我已经多次更新了.我尝试了很多不同的debs,并没有发现任何其他地方的错误.这里的问题是你的二进制包(deb)与你的源包(deb-src)不

  5. ubuntu – 有没有办法检测nginx何时完成正常关闭?

    &&touchrestarted),因为即使Nginx没有完成其关闭,touch命令也会立即执行.有没有好办法呢?这样的事情怎么样?因此,pgrep将查找任何Nginx进程,而while循环将让它坐在那里直到它们全部消失.你可以改变一些有用的东西,比如睡1;/etc/init.d/Nginx停止,以便它会休眠一秒钟,然后尝试使用init.d脚本停止Nginx.你也可以在某处放置一个计数器,这样你就可以在需要太长时间时发出轰击信号.

  6. ubuntu – 如何将所有外发电子邮件从postfix重定向到单个地址进行测试

    我正在为基于Web的应用程序设置测试服务器,该应用程序发送一些电子邮件通知.有时候测试是使用真实的客户数据进行的,因此我需要保证服务器在我们测试时无法向真实客户发送电子邮件.我想要的是配置postfix,以便它接收任何外发电子邮件并将其重定向到一个电子邮件地址,而不是传递到真正的目的地.我正在运行ubuntu服务器9.10.先感谢您设置本地用户以接收所有被困邮件:你需要在main.cf中添加:然后

  7. ubuntu – vagrant无法连接到虚拟框

    当我使用基本的Vagrantfile,只配置了两条线:我看到我的虚拟框打开,但是我的流氓日志多次显示此行直到超时:然后,超时后的一段时间,虚拟框框终于要求我登录,但是太久了!所以我用流氓/流氓记录.然后在我的物理机器上,如果我“流氓ssh”.没有事情发生,直到:怎么了?

  8. ubuntu – Nginx – 转发HTTP AUTH – 用户?

    我和Nginx和Jenkins有些麻烦.我尝试使用Nginx作为Jenkins实例的反向代理,使用HTTP基本身份验证.它到目前为止工作,但我不知道如何传递带有AUTH用户名的标头?}尝试将此指令添加到您的位置块

  9. Debian / Ubuntu – 删除后如何恢复/ var / cache / apt结构?

    我在ubuntu服务器上的空间不足,所以我做了这个命令以节省空间但是现在在尝试使用apt时,我会收到以下错误:等等显然我删除了一些目录结构.有没有办法做apt-getrebuild-var-tree或类似的?

  10. 检查ubuntu上安装的rubygems版本?

    如何查看我的ubuntu盒子上安装的rubygems版本?只是一个想法,列出已安装的软件包和grep为ruby或宝石或其他:)dpkg–get-selections

返回
顶部