Posts

Showing posts from February, 2012

Module Management in RHEL / CentOS 7

The Linux kernel allows drivers and features to be compiled as modules rather than as part of the kernel itself. This means that users can often change features in the kernel or add drivers without recompiling, and that the Linux kernel doesn't have to carry a lot of unnecessary baggage. Want to learn how to manage your modules? It's easy to do, just keep reading. In this tutorial, we'll walk through the steps of seeing what's already loaded in the running kernel, and adding and removing modules from the kernel. What's Loaded 1. To see Loaded Kernel driver or module information for PCI components: [root@localhost ~]# lspci -k 00:00.0 Host bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (rev 01)         Subsystem: VMware Virtual Machine Chipset         Kernel driver in use: agpgart-intel 00:01.0 PCI bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (rev 01) 00:07.0 ISA bridge: Intel Corporation 82371AB/EB/MB PIIX4 ISA

Adding multiple IP addresses on one Ethernet

If we have one network interface, eth0. And when you add IP addresses, you actually create virtual network interfaces named eth0:1, eth0:2, ...... eth0:n. How to set it on temporary basis on all OS's : #ifconfig eth0:1 up [IP address] netmask [chosen netmask, if unsure use 255.255.255.0]. You can add commands like this to your startup scripts to have them come up on reboot, but there is cleaner way which is maintioned below; How to set it Permanently basis on RHEL / CentOS : All interface configuration files are located in "/etc/sysconfig/network-scripts/". Each interface is represented by a file corresponding to ifcfg-eth<x> where <x> represents the unique interface number for that card (e.g. the first interface card is represented by ifcfg-eth0). To create an alias for that interface, you need to create a file in the format of ifcfg-eth0:<y> where <y> represents the alias number (e.g. the 2nd ip for the first card would be ifcfg-eth0:1).

NIC Bonding : Bind multiple Network Interfaces (NIC) Into a Single Interface

The first step is to rename the server-change /etc/sysconfig/network to match your new server name.That’s easy :) Now to the bonding driver. RHEL6 and OL 6 have deprecated /etc/modprobe.conf in favour of /etc/modprobe.d and its configuration files. It’s still necessary to tell the kernel that it should use the bonding driver for my new device, bond0 so I created a new file /etc/modprobe.d/bonding.conf with just one line in it: alias bond0 bonding That’s it, don’t put any further information about module parameters in the file, this is deprecated. The documentation clearly states “Important: put all bonding module parameters in ifcfg-bondN files”. Now I had to create the configuration files for eth0, eth1 and bond0. They are created as follows: File: ifcfg-eth0 DEVICE=eth0  BOOTPROTO=none  ONBOOT=yes  MASTER=bond0  SLAVE=yes  USERCTL=no/ File: ifcfg-eth1 DEVICE=eth1  BOOTPROTO=none  ONBOOT=yes  MASTER=bond0  SLAVE=yes  USERCTL=no File: ifcfg-bond0 DEVICE=bon

Enabling & Disabling Promiscuous mode on Ethernet

                     You can try below things to get it done; In RHEL / CentOS : #/sbin/ifconfig ethX promisc   (Temporary solution, You will loose setting if you reboot VM ) To set it permanently Edit file – #cat /etc/sysconfig/network-scripts/ifcfg-eth1 BOOTPROTO=static DEVICE=eth1 TYPE=Ethernet PROMISC=yes USERCTL=no PEERDNS=no HWADDR=xx:xx:xx:C8:67:0E In SLES : Temporary solution is same as above. But for permanent change edit file “ /etc/sysconfig/network/ifcfg-rth-id-xx:xx:xx:xx:xx:xx” Here you can add line “ ifconfig eth0 promisc ” OR if this doesn’t work add “ PROMISC=yes ” And to disable this mode either simply remove added line from the respective files or use command ; #/sbin/ifconfig ethX -promisc   (Temporary solution)