My working group uses a Canon iR2016 copier with network printing options. I've always had trouble with this machine in Linux (Debian, Ubuntu), so I decided to write down how I finally got things to work.
First, using the official Linux driver provided by Canon is the best option. I tried to use open source drivers, but they've never worked for me.
To download the driver, go to Canon Europe, select operating system "Linux" and language "English", and select UFRII/UFRII LT Printer Driver for Linux (v2.90). Scroll down and download o147jen_linuxufrII_0290.zip. Unpack the ZIP file and browse to the folder uk_eng > 64-bit_Driver (or 32, depending on your OS) > Debian.
Open the file cndrvcups-common_2.90-1_i386.deb with Ubuntu Software Center. This file needs to be installed first.
After installation has finished, open the cndrvcups-ufr2-uk_2.90-1_i386.deb with Ubuntu Software Center. This file needs to be installed second.
Next, open System Settings > Printers. Click "Add". Select "Network Printer". Click "Find Network Printer".
Type in your printer's IP address. If no printer is found, make sure it is switched on. You may also check your network connection and firewall settings.
Do not change "Port Number" or "Connection". Click "Forward". The system will automatically find the driver. Do not change "Output Option". Click "Forward". To finish installation, hit "Apply". The installer offers to print a test page. Confirm with OK to check if the installation was succesful.
The most common issue I had to deal with was that the iR2016 would print test pages but refuse to print documents. On its internal display, the printer complains about an empty "LTR" tray. This problem results from a wrong paper size specified in the printer and / or document settings.
To choose a standard paper size, double-click the printer in System Settings > Printers, go to Printer Options > Page size and select the paper size you use with the printer (in my case it's A4).
If the problem still persists, check which paper size is specified in the document settings and page setup. I chose "English" as system language, so the default paper size specified in these settings is "US letter". Therefore, the printer will not print to A4 paper but ask for paper in the non-existing LTR (letter) tray instead. Change the paper size to A4 in the page setup options, and everything will work fine: