diff options
Diffstat (limited to 'scripts')
| -rwxr-xr-x | scripts/runqemu | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/scripts/runqemu b/scripts/runqemu index dd0aa4b28f..6f24093d77 100755 --- a/scripts/runqemu +++ b/scripts/runqemu | |||
| @@ -185,6 +185,8 @@ class BaseConfig(object): | |||
| 185 | self.vmtypes = ('hddimg', 'iso') | 185 | self.vmtypes = ('hddimg', 'iso') |
| 186 | self.fsinfo = {} | 186 | self.fsinfo = {} |
| 187 | self.network_device = "-device e1000,netdev=net0,mac=@MAC@" | 187 | self.network_device = "-device e1000,netdev=net0,mac=@MAC@" |
| 188 | self.cmdline_ip_slirp = "ip=dhcp" | ||
| 189 | self.cmdline_ip_tap = "ip=192.168.7.@CLIENT@::192.168.7.@GATEWAY@:255.255.255.0" | ||
| 188 | # Use different mac section for tap and slirp to avoid | 190 | # Use different mac section for tap and slirp to avoid |
| 189 | # conflicts, e.g., when one is running with tap, the other is | 191 | # conflicts, e.g., when one is running with tap, the other is |
| 190 | # running with slirp. | 192 | # running with slirp. |
| @@ -1032,7 +1034,9 @@ class BaseConfig(object): | |||
| 1032 | 1034 | ||
| 1033 | if self.fstype == 'nfs': | 1035 | if self.fstype == 'nfs': |
| 1034 | self.setup_nfs() | 1036 | self.setup_nfs() |
| 1035 | self.kernel_cmdline_script += ' ip=dhcp' | 1037 | netconf = " " + self.cmdline_ip_slirp |
| 1038 | logger.info("Network configuration:%s", netconf) | ||
| 1039 | self.kernel_cmdline_script += netconf | ||
| 1036 | # Port mapping | 1040 | # Port mapping |
| 1037 | hostfwd = ",hostfwd=tcp::2222-:22,hostfwd=tcp::2323-:23" | 1041 | hostfwd = ",hostfwd=tcp::2222-:22,hostfwd=tcp::2323-:23" |
| 1038 | qb_slirp_opt_default = "-netdev user,id=net0%s,tftp=%s" % (hostfwd, self.get('DEPLOY_DIR_IMAGE')) | 1042 | qb_slirp_opt_default = "-netdev user,id=net0%s,tftp=%s" % (hostfwd, self.get('DEPLOY_DIR_IMAGE')) |
| @@ -1147,9 +1151,11 @@ class BaseConfig(object): | |||
| 1147 | client = gateway + 1 | 1151 | client = gateway + 1 |
| 1148 | if self.fstype == 'nfs': | 1152 | if self.fstype == 'nfs': |
| 1149 | self.setup_nfs() | 1153 | self.setup_nfs() |
| 1150 | netconf = "192.168.7.%s::192.168.7.%s:255.255.255.0" % (client, gateway) | 1154 | netconf = " " + self.cmdline_ip_tap |
| 1151 | logger.info("Network configuration: %s", netconf) | 1155 | netconf = netconf.replace('@CLIENT@', str(client)) |
| 1152 | self.kernel_cmdline_script += " ip=%s" % netconf | 1156 | netconf = netconf.replace('@GATEWAY@', str(gateway)) |
| 1157 | logger.info("Network configuration:%s", netconf) | ||
| 1158 | self.kernel_cmdline_script += netconf | ||
| 1153 | mac = "%s%02x" % (self.mac_tap, client) | 1159 | mac = "%s%02x" % (self.mac_tap, client) |
| 1154 | qb_tap_opt = self.get('QB_TAP_OPT') | 1160 | qb_tap_opt = self.get('QB_TAP_OPT') |
| 1155 | if qb_tap_opt: | 1161 | if qb_tap_opt: |
| @@ -1171,8 +1177,10 @@ class BaseConfig(object): | |||
| 1171 | if self.net_bridge: | 1177 | if self.net_bridge: |
| 1172 | self.setup_net_bridge() | 1178 | self.setup_net_bridge() |
| 1173 | elif self.slirp_enabled: | 1179 | elif self.slirp_enabled: |
| 1180 | self.cmdline_ip_slirp = self.get('QB_CMDLINE_IP_SLIRP') or self.cmdline_ip_slirp | ||
| 1174 | self.setup_slirp() | 1181 | self.setup_slirp() |
| 1175 | else: | 1182 | else: |
| 1183 | self.cmdline_ip_tap = self.get('QB_CMDLINE_IP_TAP') or self.cmdline_ip_tap | ||
| 1176 | self.setup_tap() | 1184 | self.setup_tap() |
| 1177 | 1185 | ||
| 1178 | def setup_rootfs(self): | 1186 | def setup_rootfs(self): |
